Generated by Cython 0.20 on Sat Feb 1 17:39:21 2014

Raw output: internals.c

     1: from numpy cimport *

      /* "pandas/internals.pyx":1
     * from numpy cimport *             # <<<<<<<<<<<<<<
     * cimport numpy as np
     * import numpy as np
     */
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_test, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2: cimport numpy as np

     3: import numpy as np

      /* "pandas/internals.pyx":3
     * from numpy cimport *
     * cimport numpy as np
     * import numpy as np             # <<<<<<<<<<<<<<
     *
     * cimport cython
     */
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     4:

     5: cimport cython

     6:

     7: import_array()

      /* "pandas/internals.pyx":7
     * cimport cython
     *
     * import_array()             # <<<<<<<<<<<<<<
     *
     * cimport util
     */
      import_array();

     8:

     9: cimport util

     10:

     11: import itertools

      /* "pandas/internals.pyx":11
     * cimport util
     *
     * import itertools             # <<<<<<<<<<<<<<
     * import re
     * from datetime import datetime, timedelta
     */
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_itertools, 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_itertools, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     12: import re

      /* "pandas/internals.pyx":12
     *
     * import itertools
     * import re             # <<<<<<<<<<<<<<
     * from datetime import datetime, timedelta
     * import copy
     */
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_re, 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_re, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     13: from datetime import datetime, timedelta

      /* "pandas/internals.pyx":13
     * import itertools
     * import re
     * from datetime import datetime, timedelta             # <<<<<<<<<<<<<<
     * import copy
     * from collections import defaultdict
     */
      __pyx_t_1 = PyList_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s_datetime);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_datetime);
      __Pyx_GIVEREF(__pyx_n_s_datetime);
      __Pyx_INCREF(__pyx_n_s_timedelta);
      PyList_SET_ITEM(__pyx_t_1, 1, __pyx_n_s_timedelta);
      __Pyx_GIVEREF(__pyx_n_s_timedelta);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_datetime, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_datetime); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_datetime, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_timedelta); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_timedelta, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 13; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     14: import copy

      /* "pandas/internals.pyx":14
     * import re
     * from datetime import datetime, timedelta
     * import copy             # <<<<<<<<<<<<<<
     * from collections import defaultdict
     *
     */
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_copy, 0, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_copy, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     15: from collections import defaultdict

      /* "pandas/internals.pyx":15
     * from datetime import datetime, timedelta
     * import copy
     * from collections import defaultdict             # <<<<<<<<<<<<<<
     *
     * import numpy as np
     */
      __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_n_s_defaultdict);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_defaultdict);
      __Pyx_GIVEREF(__pyx_n_s_defaultdict);
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_collections, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_defaultdict); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_defaultdict, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 15; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     16:

     17: import numpy as np

      /* "pandas/internals.pyx":17
     * from collections import defaultdict
     *
     * import numpy as np             # <<<<<<<<<<<<<<
     * from pandas.core.base import PandasObject
     *
     */
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_numpy, 0, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_np, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     18: from pandas.core.base import PandasObject

      /* "pandas/internals.pyx":18
     *
     * import numpy as np
     * from pandas.core.base import PandasObject             # <<<<<<<<<<<<<<
     *
     * from pandas.core.common import (_possibly_downcast_to_dtype, isnull, notnull,
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s_PandasObject);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_PandasObject);
      __Pyx_GIVEREF(__pyx_n_s_PandasObject);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas_core_base, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_PandasObject); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_PandasObject, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     19:

     20: from pandas.core.common import (_possibly_downcast_to_dtype, isnull, notnull,

      /* "pandas/internals.pyx":20
     * from pandas.core.base import PandasObject
     *
     * from pandas.core.common import (_possibly_downcast_to_dtype, isnull, notnull,             # <<<<<<<<<<<<<<
     *                                 _NS_DTYPE, _TD_DTYPE, ABCSeries, is_list_like,
     *                                 ABCSparseSeries, _infer_dtype_from_scalar,
     */
      __pyx_t_2 = PyList_New(11); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_n_s_possibly_downcast_to_dtype);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_possibly_downcast_to_dtype);
      __Pyx_GIVEREF(__pyx_n_s_possibly_downcast_to_dtype);
      __Pyx_INCREF(__pyx_n_s_isnull);
      PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_isnull);
      __Pyx_GIVEREF(__pyx_n_s_isnull);
      __Pyx_INCREF(__pyx_n_s_notnull);
      PyList_SET_ITEM(__pyx_t_2, 2, __pyx_n_s_notnull);
      __Pyx_GIVEREF(__pyx_n_s_notnull);
      __Pyx_INCREF(__pyx_n_s_NS_DTYPE);
      PyList_SET_ITEM(__pyx_t_2, 3, __pyx_n_s_NS_DTYPE);
      __Pyx_GIVEREF(__pyx_n_s_NS_DTYPE);
      __Pyx_INCREF(__pyx_n_s_TD_DTYPE);
      PyList_SET_ITEM(__pyx_t_2, 4, __pyx_n_s_TD_DTYPE);
      __Pyx_GIVEREF(__pyx_n_s_TD_DTYPE);
      __Pyx_INCREF(__pyx_n_s_ABCSeries);
      PyList_SET_ITEM(__pyx_t_2, 5, __pyx_n_s_ABCSeries);
      __Pyx_GIVEREF(__pyx_n_s_ABCSeries);
      __Pyx_INCREF(__pyx_n_s_is_list_like);
      PyList_SET_ITEM(__pyx_t_2, 6, __pyx_n_s_is_list_like);
      __Pyx_GIVEREF(__pyx_n_s_is_list_like);
      __Pyx_INCREF(__pyx_n_s_ABCSparseSeries);
      PyList_SET_ITEM(__pyx_t_2, 7, __pyx_n_s_ABCSparseSeries);
      __Pyx_GIVEREF(__pyx_n_s_ABCSparseSeries);
      __Pyx_INCREF(__pyx_n_s_infer_dtype_from_scalar);
      PyList_SET_ITEM(__pyx_t_2, 8, __pyx_n_s_infer_dtype_from_scalar);
      __Pyx_GIVEREF(__pyx_n_s_infer_dtype_from_scalar);
      __Pyx_INCREF(__pyx_n_s_values_from_object);
      PyList_SET_ITEM(__pyx_t_2, 9, __pyx_n_s_values_from_object);
      __Pyx_GIVEREF(__pyx_n_s_values_from_object);
      __Pyx_INCREF(__pyx_n_s_is_null_datelike_scalar);
      PyList_SET_ITEM(__pyx_t_2, 10, __pyx_n_s_is_null_datelike_scalar);
      __Pyx_GIVEREF(__pyx_n_s_is_null_datelike_scalar);
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_pandas_core_common, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_possibly_downcast_to_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_possibly_downcast_to_dtype, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_isnull); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_isnull, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_notnull); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_notnull, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_NS_DTYPE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_NS_DTYPE, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_TD_DTYPE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_TD_DTYPE, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_ABCSeries); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_ABCSeries, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_is_list_like); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_list_like, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_ABCSparseSeries); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_ABCSparseSeries, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_infer_dtype_from_scalar); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_infer_dtype_from_scalar, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_values_from_object); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_values_from_object, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_is_null_datelike_scalar); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 20; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_is_null_datelike_scalar, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 23; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     21:                                 _NS_DTYPE, _TD_DTYPE, ABCSeries, is_list_like,

     22:                                 ABCSparseSeries, _infer_dtype_from_scalar,

     23:                                 _values_from_object, _is_null_datelike_scalar)

     24: from pandas.core.index import (Index, MultiIndex, _ensure_index,

      /* "pandas/internals.pyx":24
     *                                 ABCSparseSeries, _infer_dtype_from_scalar,
     *                                 _values_from_object, _is_null_datelike_scalar)
     * from pandas.core.index import (Index, MultiIndex, _ensure_index,             # <<<<<<<<<<<<<<
     *                                _handle_legacy_indexes)
     * from pandas.core.indexing import (_check_slice_bounds, _maybe_convert_indices,
     */
      __pyx_t_1 = PyList_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s_Index);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_Index);
      __Pyx_GIVEREF(__pyx_n_s_Index);
      __Pyx_INCREF(__pyx_n_s_MultiIndex);
      PyList_SET_ITEM(__pyx_t_1, 1, __pyx_n_s_MultiIndex);
      __Pyx_GIVEREF(__pyx_n_s_MultiIndex);
      __Pyx_INCREF(__pyx_n_s_ensure_index);
      PyList_SET_ITEM(__pyx_t_1, 2, __pyx_n_s_ensure_index);
      __Pyx_GIVEREF(__pyx_n_s_ensure_index);
      __Pyx_INCREF(__pyx_n_s_handle_legacy_indexes);
      PyList_SET_ITEM(__pyx_t_1, 3, __pyx_n_s_handle_legacy_indexes);
      __Pyx_GIVEREF(__pyx_n_s_handle_legacy_indexes);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas_core_index, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_Index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_Index, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_MultiIndex); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_MultiIndex, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_ensure_index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_ensure_index, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_handle_legacy_indexes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 24; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_handle_legacy_indexes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     25:                                _handle_legacy_indexes)

     26: from pandas.core.indexing import (_check_slice_bounds, _maybe_convert_indices,

      /* "pandas/internals.pyx":26
     * from pandas.core.index import (Index, MultiIndex, _ensure_index,
     *                                _handle_legacy_indexes)
     * from pandas.core.indexing import (_check_slice_bounds, _maybe_convert_indices,             # <<<<<<<<<<<<<<
     *                                   _length_of_indexer)
     * import pandas.core.common as com
     */
      __pyx_t_2 = PyList_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_n_s_check_slice_bounds);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_check_slice_bounds);
      __Pyx_GIVEREF(__pyx_n_s_check_slice_bounds);
      __Pyx_INCREF(__pyx_n_s_maybe_convert_indices);
      PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_maybe_convert_indices);
      __Pyx_GIVEREF(__pyx_n_s_maybe_convert_indices);
      __Pyx_INCREF(__pyx_n_s_length_of_indexer);
      PyList_SET_ITEM(__pyx_t_2, 2, __pyx_n_s_length_of_indexer);
      __Pyx_GIVEREF(__pyx_n_s_length_of_indexer);
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_pandas_core_indexing, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_check_slice_bounds); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_check_slice_bounds, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_maybe_convert_indices); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_maybe_convert_indices, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_length_of_indexer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 26; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_length_of_indexer, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 27; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     27:                                   _length_of_indexer)

     28: import pandas.core.common as com

      /* "pandas/internals.pyx":28
     * from pandas.core.indexing import (_check_slice_bounds, _maybe_convert_indices,
     *                                   _length_of_indexer)
     * import pandas.core.common as com             # <<<<<<<<<<<<<<
     * from pandas.sparse.array import _maybe_to_sparse, SparseArray
     * import pandas.lib as lib
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s__152);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s__152);
      __Pyx_GIVEREF(__pyx_n_s__152);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas_core_common, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_com, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 28; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     29: from pandas.sparse.array import _maybe_to_sparse, SparseArray

      /* "pandas/internals.pyx":29
     *                                   _length_of_indexer)
     * import pandas.core.common as com
     * from pandas.sparse.array import _maybe_to_sparse, SparseArray             # <<<<<<<<<<<<<<
     * import pandas.lib as lib
     * import pandas.tslib as tslib
     */
      __pyx_t_2 = PyList_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_n_s_maybe_to_sparse);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_maybe_to_sparse);
      __Pyx_GIVEREF(__pyx_n_s_maybe_to_sparse);
      __Pyx_INCREF(__pyx_n_s_SparseArray);
      PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_SparseArray);
      __Pyx_GIVEREF(__pyx_n_s_SparseArray);
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_pandas_sparse_array, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_maybe_to_sparse); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_maybe_to_sparse, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_SparseArray); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_SparseArray, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     30: import pandas.lib as lib

      /* "pandas/internals.pyx":30
     * import pandas.core.common as com
     * from pandas.sparse.array import _maybe_to_sparse, SparseArray
     * import pandas.lib as lib             # <<<<<<<<<<<<<<
     * import pandas.tslib as tslib
     * import pandas.computation.expressions as expressions
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s__152);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s__152);
      __Pyx_GIVEREF(__pyx_n_s__152);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas_lib, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_lib, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     31: import pandas.tslib as tslib

      /* "pandas/internals.pyx":31
     * from pandas.sparse.array import _maybe_to_sparse, SparseArray
     * import pandas.lib as lib
     * import pandas.tslib as tslib             # <<<<<<<<<<<<<<
     * import pandas.computation.expressions as expressions
     *
     */
      __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_n_s__152);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s__152);
      __Pyx_GIVEREF(__pyx_n_s__152);
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_pandas_tslib, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_tslib, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 31; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     32: import pandas.computation.expressions as expressions

      /* "pandas/internals.pyx":32
     * import pandas.lib as lib
     * import pandas.tslib as tslib
     * import pandas.computation.expressions as expressions             # <<<<<<<<<<<<<<
     *
     * from pandas.tslib import Timestamp
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s__152);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s__152);
      __Pyx_GIVEREF(__pyx_n_s__152);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas_computation_expressions, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_expressions, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 32; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     33:

     34: from pandas.tslib import Timestamp

      /* "pandas/internals.pyx":34
     * import pandas.computation.expressions as expressions
     *
     * from pandas.tslib import Timestamp             # <<<<<<<<<<<<<<
     * from pandas import compat
     * from pandas.compat import range, lrange, lmap, callable, map, zip, u
     */
      __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_n_s_Timestamp);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_Timestamp);
      __Pyx_GIVEREF(__pyx_n_s_Timestamp);
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_pandas_tslib, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_Timestamp); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_Timestamp, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 34; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     35: from pandas import compat

      /* "pandas/internals.pyx":35
     *
     * from pandas.tslib import Timestamp
     * from pandas import compat             # <<<<<<<<<<<<<<
     * from pandas.compat import range, lrange, lmap, callable, map, zip, u
     * from pandas.tseries.timedeltas import _coerce_scalar_to_timedelta_type
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s_compat);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_compat);
      __Pyx_GIVEREF(__pyx_n_s_compat);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_compat); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_compat, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     36: from pandas.compat import range, lrange, lmap, callable, map, zip, u

      /* "pandas/internals.pyx":36
     * from pandas.tslib import Timestamp
     * from pandas import compat
     * from pandas.compat import range, lrange, lmap, callable, map, zip, u             # <<<<<<<<<<<<<<
     * from pandas.tseries.timedeltas import _coerce_scalar_to_timedelta_type
     *
     */
      __pyx_t_2 = PyList_New(7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_n_s_range);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_n_s_range);
      __Pyx_GIVEREF(__pyx_n_s_range);
      __Pyx_INCREF(__pyx_n_s_lrange);
      PyList_SET_ITEM(__pyx_t_2, 1, __pyx_n_s_lrange);
      __Pyx_GIVEREF(__pyx_n_s_lrange);
      __Pyx_INCREF(__pyx_n_s_lmap);
      PyList_SET_ITEM(__pyx_t_2, 2, __pyx_n_s_lmap);
      __Pyx_GIVEREF(__pyx_n_s_lmap);
      __Pyx_INCREF(__pyx_n_s_callable);
      PyList_SET_ITEM(__pyx_t_2, 3, __pyx_n_s_callable);
      __Pyx_GIVEREF(__pyx_n_s_callable);
      __Pyx_INCREF(__pyx_n_s_map);
      PyList_SET_ITEM(__pyx_t_2, 4, __pyx_n_s_map);
      __Pyx_GIVEREF(__pyx_n_s_map);
      __Pyx_INCREF(__pyx_n_s_zip);
      PyList_SET_ITEM(__pyx_t_2, 5, __pyx_n_s_zip);
      __Pyx_GIVEREF(__pyx_n_s_zip);
      __Pyx_INCREF(__pyx_n_s_u);
      PyList_SET_ITEM(__pyx_t_2, 6, __pyx_n_s_u);
      __Pyx_GIVEREF(__pyx_n_s_u);
      __pyx_t_1 = __Pyx_Import(__pyx_n_s_pandas_compat, __pyx_t_2, -1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_range); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_range, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_lrange); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_lrange, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_lmap); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_lmap, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_callable); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_callable, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_map); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_map, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_zip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_zip, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_ImportFrom(__pyx_t_1, __pyx_n_s_u); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_u, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 36; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     37: from pandas.tseries.timedeltas import _coerce_scalar_to_timedelta_type

      /* "pandas/internals.pyx":37
     * from pandas import compat
     * from pandas.compat import range, lrange, lmap, callable, map, zip, u
     * from pandas.tseries.timedeltas import _coerce_scalar_to_timedelta_type             # <<<<<<<<<<<<<<
     *
     * class Block(PandasObject):
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s_coerce_scalar_to_timedelta_type);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_coerce_scalar_to_timedelta_type);
      __Pyx_GIVEREF(__pyx_n_s_coerce_scalar_to_timedelta_type);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas_tseries_timedeltas, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_coerce_scalar_to_timedelta_type); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_coerce_scalar_to_timedelta_type, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 37; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     38:

     39: class Block(PandasObject):

      /* "pandas/internals.pyx":39
     * from pandas.tseries.timedeltas import _coerce_scalar_to_timedelta_type
     *
     * class Block(PandasObject):             # <<<<<<<<<<<<<<
     *
     *     """
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_PandasObject); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_Block, __pyx_n_s_Block, (PyObject *) NULL, __pyx_n_s_pandas_internals, __pyx_kp_s_Canonical_n_dimensional_unit_of); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":39
     * from pandas.tseries.timedeltas import _coerce_scalar_to_timedelta_type
     *
     * class Block(PandasObject):             # <<<<<<<<<<<<<<
     *
     *     """
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_Block, __pyx_t_1, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_Block, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 39; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     40:

     41:     """

     42:     Canonical n-dimensional unit of homogeneous dtype contained in a pandas

     43:     data structure

     44:

     45:     Index-ignorant; let the container take care of that

     46:     """

     47:     __slots__ = ['items', 'ref_items', '_ref_locs', 'values', 'ndim']

      /* "pandas/internals.pyx":47
     *     Index-ignorant; let the container take care of that
     *     """
     *     __slots__ = ['items', 'ref_items', '_ref_locs', 'values', 'ndim']             # <<<<<<<<<<<<<<
     *     is_numeric = False
     *     is_float = False
     */
      __pyx_t_4 = PyList_New(5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_n_s_items);
      PyList_SET_ITEM(__pyx_t_4, 0, __pyx_n_s_items);
      __Pyx_GIVEREF(__pyx_n_s_items);
      __Pyx_INCREF(__pyx_n_s_ref_items);
      PyList_SET_ITEM(__pyx_t_4, 1, __pyx_n_s_ref_items);
      __Pyx_GIVEREF(__pyx_n_s_ref_items);
      __Pyx_INCREF(__pyx_n_s_ref_locs);
      PyList_SET_ITEM(__pyx_t_4, 2, __pyx_n_s_ref_locs);
      __Pyx_GIVEREF(__pyx_n_s_ref_locs);
      __Pyx_INCREF(__pyx_n_s_values);
      PyList_SET_ITEM(__pyx_t_4, 3, __pyx_n_s_values);
      __Pyx_GIVEREF(__pyx_n_s_values);
      __Pyx_INCREF(__pyx_n_s_ndim);
      PyList_SET_ITEM(__pyx_t_4, 4, __pyx_n_s_ndim);
      __Pyx_GIVEREF(__pyx_n_s_ndim);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_slots, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 47; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     48:     is_numeric = False

      /* "pandas/internals.pyx":48
     *     """
     *     __slots__ = ['items', 'ref_items', '_ref_locs', 'values', 'ndim']
     *     is_numeric = False             # <<<<<<<<<<<<<<
     *     is_float = False
     *     is_integer = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_numeric, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 48; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     49:     is_float = False

      /* "pandas/internals.pyx":49
     *     __slots__ = ['items', 'ref_items', '_ref_locs', 'values', 'ndim']
     *     is_numeric = False
     *     is_float = False             # <<<<<<<<<<<<<<
     *     is_integer = False
     *     is_complex = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_float, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 49; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     50:     is_integer = False

      /* "pandas/internals.pyx":50
     *     is_numeric = False
     *     is_float = False
     *     is_integer = False             # <<<<<<<<<<<<<<
     *     is_complex = False
     *     is_datetime = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_integer, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 50; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     51:     is_complex = False

      /* "pandas/internals.pyx":51
     *     is_float = False
     *     is_integer = False
     *     is_complex = False             # <<<<<<<<<<<<<<
     *     is_datetime = False
     *     is_timedelta = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_complex, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 51; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     52:     is_datetime = False

      /* "pandas/internals.pyx":52
     *     is_integer = False
     *     is_complex = False
     *     is_datetime = False             # <<<<<<<<<<<<<<
     *     is_timedelta = False
     *     is_bool = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_datetime, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     53:     is_timedelta = False

      /* "pandas/internals.pyx":53
     *     is_complex = False
     *     is_datetime = False
     *     is_timedelta = False             # <<<<<<<<<<<<<<
     *     is_bool = False
     *     is_object = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_timedelta, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 53; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     54:     is_bool = False

      /* "pandas/internals.pyx":54
     *     is_datetime = False
     *     is_timedelta = False
     *     is_bool = False             # <<<<<<<<<<<<<<
     *     is_object = False
     *     is_sparse = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_bool, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 54; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     55:     is_object = False

      /* "pandas/internals.pyx":55
     *     is_timedelta = False
     *     is_bool = False
     *     is_object = False             # <<<<<<<<<<<<<<
     *     is_sparse = False
     *     _can_hold_na = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_object, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     56:     is_sparse = False

      /* "pandas/internals.pyx":56
     *     is_bool = False
     *     is_object = False
     *     is_sparse = False             # <<<<<<<<<<<<<<
     *     _can_hold_na = False
     *     _downcast_dtype = None
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_sparse, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 56; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     57:     _can_hold_na = False

      /* "pandas/internals.pyx":57
     *     is_object = False
     *     is_sparse = False
     *     _can_hold_na = False             # <<<<<<<<<<<<<<
     *     _downcast_dtype = None
     *     _can_consolidate = True
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 57; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     58:     _downcast_dtype = None

      /* "pandas/internals.pyx":58
     *     is_sparse = False
     *     _can_hold_na = False
     *     _downcast_dtype = None             # <<<<<<<<<<<<<<
     *     _can_consolidate = True
     *     _verify_integrity = True
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_downcast_dtype, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     59:     _can_consolidate = True

      /* "pandas/internals.pyx":59
     *     _can_hold_na = False
     *     _downcast_dtype = None
     *     _can_consolidate = True             # <<<<<<<<<<<<<<
     *     _verify_integrity = True
     *     _ftype = 'dense'
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_consolidate, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     60:     _verify_integrity = True

      /* "pandas/internals.pyx":60
     *     _downcast_dtype = None
     *     _can_consolidate = True
     *     _verify_integrity = True             # <<<<<<<<<<<<<<
     *     _ftype = 'dense'
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_verify_integrity, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     61:     _ftype = 'dense'

      /* "pandas/internals.pyx":61
     *     _can_consolidate = True
     *     _verify_integrity = True
     *     _ftype = 'dense'             # <<<<<<<<<<<<<<
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ftype, __pyx_n_s_dense) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 61; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     62:

     63:     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,

    /* "pandas/internals.pyx":63
     *     _ftype = 'dense'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_1__init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_1__init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_ndim = 0;
      PyObject *__pyx_v_fastpath = 0;
      PyObject *__pyx_v_placement = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_items,&__pyx_n_s_ref_items,&__pyx_n_s_ndim,&__pyx_n_s_fastpath,&__pyx_n_s_placement,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_False));

      /* "pandas/internals.pyx":63
     *     _ftype = 'dense'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_items, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_ndim, PyObject *__pyx_v_fastpath, PyObject *__pyx_v_placement) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__", 0);
      __Pyx_INCREF(__pyx_v_ndim);

      /* "pandas/internals.pyx":63
     *     _ftype = 'dense'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.Block.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ndim);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":63
     *     _ftype = 'dense'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */
      __pyx_tuple__153 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_ndim, __pyx_n_s_fastpath, __pyx_n_s_placement); if (unlikely(!__pyx_tuple__153)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__153);
      __Pyx_GIVEREF(__pyx_tuple__153);
      __pyx_codeobj__154 = (PyObject*)__Pyx_PyCode_New(7, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__153, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_init, 63, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__154)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":63
     *     _ftype = 'dense'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_1__init__, 0, __pyx_n_s_Block___init, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__154)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__155);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_init, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__155 = PyTuple_Pack(3, ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__155)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__155);
      __Pyx_GIVEREF(__pyx_tuple__155);

     64:                  placement=None):

        /* "pandas/internals.pyx":64
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,
     *                  placement=None):             # <<<<<<<<<<<<<<
     *
     *         if ndim is None:
     */
        values[6] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ndim);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_placement);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_items = values[2];
        __pyx_v_ref_items = values[3];
        __pyx_v_ndim = values[4];
        __pyx_v_fastpath = values[5];
        __pyx_v_placement = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block___init__(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_items, __pyx_v_ref_items, __pyx_v_ndim, __pyx_v_fastpath, __pyx_v_placement);

     65:

     66:         if ndim is None:

      /* "pandas/internals.pyx":66
     *                  placement=None):
     *
     *         if ndim is None:             # <<<<<<<<<<<<<<
     *             ndim = values.ndim
     *
     */
      __pyx_t_1 = (__pyx_v_ndim == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     67:             ndim = values.ndim

        /* "pandas/internals.pyx":67
     *
     *         if ndim is None:
     *             ndim = values.ndim             # <<<<<<<<<<<<<<
     *
     *         if values.ndim != ndim:
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_ndim, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     68:

     69:         if values.ndim != ndim:

      /* "pandas/internals.pyx":69
     *             ndim = values.ndim
     *
     *         if values.ndim != ndim:             # <<<<<<<<<<<<<<
     *             raise ValueError('Wrong number of dimensions')
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_v_ndim, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_2) {

     70:             raise ValueError('Wrong number of dimensions')

        /* "pandas/internals.pyx":70
     *
     *         if values.ndim != ndim:
     *             raise ValueError('Wrong number of dimensions')             # <<<<<<<<<<<<<<
     *
     *         if len(items) != len(values):
     */
        __pyx_t_4 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple_, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":70
     *
     *         if values.ndim != ndim:
     *             raise ValueError('Wrong number of dimensions')             # <<<<<<<<<<<<<<
     *
     *         if len(items) != len(values):
     */
      __pyx_tuple_ = PyTuple_Pack(1, __pyx_kp_s_Wrong_number_of_dimensions); if (unlikely(!__pyx_tuple_)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple_);
      __Pyx_GIVEREF(__pyx_tuple_);

     71:

     72:         if len(items) != len(values):

      /* "pandas/internals.pyx":72
     *             raise ValueError('Wrong number of dimensions')
     *
     *         if len(items) != len(values):             # <<<<<<<<<<<<<<
     *             raise ValueError('Wrong number of items passed %d, indices imply '
     *                              '%d' % (len(items), len(values)))
     */
      __pyx_t_5 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = PyObject_Length(__pyx_v_values); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = ((__pyx_t_5 != __pyx_t_6) != 0);
      if (__pyx_t_2) {

     73:             raise ValueError('Wrong number of items passed %d, indices imply '

        /* "pandas/internals.pyx":73
     *
     *         if len(items) != len(values):
     *             raise ValueError('Wrong number of items passed %d, indices imply '             # <<<<<<<<<<<<<<
     *                              '%d' % (len(items), len(values)))
     *
     */
        __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_Raise(__pyx_t_3, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     74:                              '%d' % (len(items), len(values)))

        /* "pandas/internals.pyx":74
     *         if len(items) != len(values):
     *             raise ValueError('Wrong number of items passed %d, indices imply '
     *                              '%d' % (len(items), len(values)))             # <<<<<<<<<<<<<<
     *
     *         self.set_ref_locs(placement)
     */
        __pyx_t_6 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = PyObject_Length(__pyx_v_values); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_4 = 0;
        __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_Wrong_number_of_items_passed_d_i, __pyx_t_7); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

     75:

     76:         self.set_ref_locs(placement)

      /* "pandas/internals.pyx":76
     *                              '%d' % (len(items), len(values)))
     *
     *         self.set_ref_locs(placement)             # <<<<<<<<<<<<<<
     *         self.values = values
     *         self.ndim = ndim
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_INCREF(__pyx_v_placement);
      PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_placement);
      __Pyx_GIVEREF(__pyx_v_placement);
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     77:         self.values = values

      /* "pandas/internals.pyx":77
     *
     *         self.set_ref_locs(placement)
     *         self.values = values             # <<<<<<<<<<<<<<
     *         self.ndim = ndim
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values, __pyx_v_values) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     78:         self.ndim = ndim

      /* "pandas/internals.pyx":78
     *         self.set_ref_locs(placement)
     *         self.values = values
     *         self.ndim = ndim             # <<<<<<<<<<<<<<
     *
     *         if fastpath:
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ndim, __pyx_v_ndim) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     79:

     80:         if fastpath:

      /* "pandas/internals.pyx":80
     *         self.ndim = ndim
     *
     *         if fastpath:             # <<<<<<<<<<<<<<
     *             self.items = items
     *             self.ref_items = ref_items
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_fastpath); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     81:             self.items = items

        /* "pandas/internals.pyx":81
     *
     *         if fastpath:
     *             self.items = items             # <<<<<<<<<<<<<<
     *             self.ref_items = ref_items
     *         else:
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items, __pyx_v_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     82:             self.ref_items = ref_items

        /* "pandas/internals.pyx":82
     *         if fastpath:
     *             self.items = items
     *             self.ref_items = ref_items             # <<<<<<<<<<<<<<
     *         else:
     *             self.items = _ensure_index(items)
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_items, __pyx_v_ref_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L6;
      }
      /*else*/ {

     83:         else:

     84:             self.items = _ensure_index(items)

        /* "pandas/internals.pyx":84
     *             self.ref_items = ref_items
     *         else:
     *             self.items = _ensure_index(items)             # <<<<<<<<<<<<<<
     *             self.ref_items = _ensure_index(ref_items)
     *
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     85:             self.ref_items = _ensure_index(ref_items)

        /* "pandas/internals.pyx":85
     *         else:
     *             self.items = _ensure_index(items)
     *             self.ref_items = _ensure_index(ref_items)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_ref_items);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_ref_items);
        __Pyx_GIVEREF(__pyx_v_ref_items);
        __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_7, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_items, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __pyx_L6:;

     86:

     87:     @property

      /* "pandas/internals.pyx":87
     *             self.ref_items = _ensure_index(ref_items)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def _consolidate_key(self):
     *         return (self._can_consolidate, self.dtype.name)
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_consolidate_key, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     88:     def _consolidate_key(self):

    /* "pandas/internals.pyx":88
     *
     *     @property
     *     def _consolidate_key(self):             # <<<<<<<<<<<<<<
     *         return (self._can_consolidate, self.dtype.name)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_3_consolidate_key(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_3_consolidate_key = {__Pyx_NAMESTR("_consolidate_key"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_3_consolidate_key, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_3_consolidate_key(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_key (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_2_consolidate_key(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_2_consolidate_key(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_key", 0);

      /* "pandas/internals.pyx":88
     *
     *     @property
     *     def _consolidate_key(self):             # <<<<<<<<<<<<<<
     *         return (self._can_consolidate, self.dtype.name)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.Block._consolidate_key", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":88
     *
     *     @property
     *     def _consolidate_key(self):             # <<<<<<<<<<<<<<
     *         return (self._can_consolidate, self.dtype.name)
     *
     */
      __pyx_tuple__156 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__156)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__156);
      __Pyx_GIVEREF(__pyx_tuple__156);

      /* "pandas/internals.pyx":88
     *
     *     @property
     *     def _consolidate_key(self):             # <<<<<<<<<<<<<<
     *         return (self._can_consolidate, self.dtype.name)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_3_consolidate_key, 0, __pyx_n_s_Block__consolidate_key, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__157)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__157 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__156, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_consolidate_key, 88, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__157)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     89:         return (self._can_consolidate, self.dtype.name)

      /* "pandas/internals.pyx":89
     *     @property
     *     def _consolidate_key(self):
     *         return (self._can_consolidate, self.dtype.name)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_can_consolidate); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_name); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 89; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_1 = 0;
      __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     90:

     91:     @property

      /* "pandas/internals.pyx":91
     *         return (self._can_consolidate, self.dtype.name)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def _is_single_block(self):
     *         return self.ndim == 1
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 91; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_single_block, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     92:     def _is_single_block(self):

    /* "pandas/internals.pyx":92
     *
     *     @property
     *     def _is_single_block(self):             # <<<<<<<<<<<<<<
     *         return self.ndim == 1
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_5_is_single_block(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_5_is_single_block = {__Pyx_NAMESTR("_is_single_block"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_5_is_single_block, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_5_is_single_block(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_is_single_block (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_4_is_single_block(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_4_is_single_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_is_single_block", 0);

      /* "pandas/internals.pyx":92
     *
     *     @property
     *     def _is_single_block(self):             # <<<<<<<<<<<<<<
     *         return self.ndim == 1
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.Block._is_single_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":92
     *
     *     @property
     *     def _is_single_block(self):             # <<<<<<<<<<<<<<
     *         return self.ndim == 1
     *
     */
      __pyx_tuple__158 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__158)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__158);
      __Pyx_GIVEREF(__pyx_tuple__158);

      /* "pandas/internals.pyx":92
     *
     *     @property
     *     def _is_single_block(self):             # <<<<<<<<<<<<<<
     *         return self.ndim == 1
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_5_is_single_block, 0, __pyx_n_s_Block__is_single_block, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__159)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__159 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__158, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_single_block, 92, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__159)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     93:         return self.ndim == 1

      /* "pandas/internals.pyx":93
     *     @property
     *     def _is_single_block(self):
     *         return self.ndim == 1             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     94:

     95:     @property

      /* "pandas/internals.pyx":95
     *         return self.ndim == 1
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def is_datelike(self):
     *         """ return True if I am a non-datelike """
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_datelike, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     96:     def is_datelike(self):

    /* "pandas/internals.pyx":96
     *
     *     @property
     *     def is_datelike(self):             # <<<<<<<<<<<<<<
     *         """ return True if I am a non-datelike """
     *         return self.is_datetime or self.is_timedelta
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7is_datelike(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_6is_datelike[] = " return True if I am a non-datelike ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_7is_datelike = {__Pyx_NAMESTR("is_datelike"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_7is_datelike, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_6is_datelike)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7is_datelike(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_datelike (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_6is_datelike(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_6is_datelike(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_datelike", 0);

      /* "pandas/internals.pyx":96
     *
     *     @property
     *     def is_datelike(self):             # <<<<<<<<<<<<<<
     *         """ return True if I am a non-datelike """
     *         return self.is_datetime or self.is_timedelta
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.is_datelike", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":96
     *
     *     @property
     *     def is_datelike(self):             # <<<<<<<<<<<<<<
     *         """ return True if I am a non-datelike """
     *         return self.is_datetime or self.is_timedelta
     */
      __pyx_tuple__160 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__160)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__160);
      __Pyx_GIVEREF(__pyx_tuple__160);

      /* "pandas/internals.pyx":96
     *
     *     @property
     *     def is_datelike(self):             # <<<<<<<<<<<<<<
     *         """ return True if I am a non-datelike """
     *         return self.is_datetime or self.is_timedelta
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_7is_datelike, 0, __pyx_n_s_Block_is_datelike, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__161)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__161 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__160, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_datelike, 96, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__161)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 96; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     97:         """ return True if I am a non-datelike """

     98:         return self.is_datetime or self.is_timedelta

      /* "pandas/internals.pyx":98
     *     def is_datelike(self):
     *         """ return True if I am a non-datelike """
     *         return self.is_datetime or self.is_timedelta             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_datetime); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_2) {
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_timedelta); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __pyx_t_3;
        __pyx_t_3 = 0;
      } else {
        __pyx_t_4 = __pyx_t_1;
        __pyx_t_1 = 0;
      }
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     99:

     100:     @property

      /* "pandas/internals.pyx":100
     *         return self.is_datetime or self.is_timedelta
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def fill_value(self):
     *         return np.nan
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     101:     def fill_value(self):

    /* "pandas/internals.pyx":101
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return np.nan
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_9fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_9fill_value = {__Pyx_NAMESTR("fill_value"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_9fill_value, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_9fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_8fill_value(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_8fill_value(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value", 0);

      /* "pandas/internals.pyx":101
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return np.nan
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.Block.fill_value", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":101
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return np.nan
     *
     */
      __pyx_tuple__162 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__162)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__162);
      __Pyx_GIVEREF(__pyx_tuple__162);

      /* "pandas/internals.pyx":101
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return np.nan
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_9fill_value, 0, __pyx_n_s_Block_fill_value, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__163)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__163 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__162, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fill_value, 101, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__163)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     102:         return np.nan

      /* "pandas/internals.pyx":102
     *     @property
     *     def fill_value(self):
     *         return np.nan             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_nan); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     103:

     104:     @property

      /* "pandas/internals.pyx":104
     *         return np.nan
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def ref_locs(self):
     *         if self._ref_locs is None:
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ref_locs_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     105:     def ref_locs(self):

    /* "pandas/internals.pyx":105
     *
     *     @property
     *     def ref_locs(self):             # <<<<<<<<<<<<<<
     *         if self._ref_locs is None:
     *             # we have a single block, maybe have duplicates
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_11ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_11ref_locs = {__Pyx_NAMESTR("ref_locs"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_11ref_locs, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_11ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ref_locs (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_10ref_locs(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_10ref_locs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_indexer = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ref_locs", 0);

      /* "pandas/internals.pyx":105
     *
     *     @property
     *     def ref_locs(self):             # <<<<<<<<<<<<<<
     *         if self._ref_locs is None:
     *             # we have a single block, maybe have duplicates
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.Block.ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":105
     *
     *     @property
     *     def ref_locs(self):             # <<<<<<<<<<<<<<
     *         if self._ref_locs is None:
     *             # we have a single block, maybe have duplicates
     */
      __pyx_tuple__164 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_indexer); if (unlikely(!__pyx_tuple__164)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__164);
      __Pyx_GIVEREF(__pyx_tuple__164);

      /* "pandas/internals.pyx":105
     *
     *     @property
     *     def ref_locs(self):             # <<<<<<<<<<<<<<
     *         if self._ref_locs is None:
     *             # we have a single block, maybe have duplicates
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_11ref_locs, 0, __pyx_n_s_Block_ref_locs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__165)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__165 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__164, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_ref_locs_2, 105, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__165)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     106:         if self._ref_locs is None:

      /* "pandas/internals.pyx":106
     *     @property
     *     def ref_locs(self):
     *         if self._ref_locs is None:             # <<<<<<<<<<<<<<
     *             # we have a single block, maybe have duplicates
     *             # but indexer is easy
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = (__pyx_t_1 == Py_None);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     107:             # we have a single block, maybe have duplicates

     108:             # but indexer is easy

     109:             # also if we are not really reindexing, just numbering

     110:             if self._is_single_block or self.ref_items.equals(self.items):

        /* "pandas/internals.pyx":110
     *             # but indexer is easy
     *             # also if we are not really reindexing, just numbering
     *             if self._is_single_block or self.ref_items.equals(self.items):             # <<<<<<<<<<<<<<
     *                 indexer = np.arange(len(self.items))
     *             else:
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_single_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (!__pyx_t_3) {
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_equals); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_6 = __pyx_t_2;
        } else {
          __pyx_t_6 = __pyx_t_3;
        }
        if (__pyx_t_6) {

     111:                 indexer = np.arange(len(self.items))

          /* "pandas/internals.pyx":111
     *             # also if we are not really reindexing, just numbering
     *             if self._is_single_block or self.ref_items.equals(self.items):
     *                 indexer = np.arange(len(self.items))             # <<<<<<<<<<<<<<
     *             else:
     *
     */
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_arange); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_7 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_v_indexer = __pyx_t_1;
          __pyx_t_1 = 0;
          goto __pyx_L4;
        }
        /*else*/ {

     112:             else:

     113:

     114:                 indexer = self.ref_items.get_indexer(self.items)

          /* "pandas/internals.pyx":114
     *             else:
     *
     *                 indexer = self.ref_items.get_indexer(self.items)             # <<<<<<<<<<<<<<
     *                 indexer = com._ensure_platform_int(indexer)
     *                 if (indexer == -1).any():
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_indexer); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_v_indexer = __pyx_t_1;
          __pyx_t_1 = 0;

     115:                 indexer = com._ensure_platform_int(indexer)

          /* "pandas/internals.pyx":115
     *
     *                 indexer = self.ref_items.get_indexer(self.items)
     *                 indexer = com._ensure_platform_int(indexer)             # <<<<<<<<<<<<<<
     *                 if (indexer == -1).any():
     *
     */
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ensure_platform_int); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_indexer);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_indexer);
          __Pyx_GIVEREF(__pyx_v_indexer);
          __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_4);
          __pyx_t_4 = 0;

     116:                 if (indexer == -1).any():

          /* "pandas/internals.pyx":116
     *                 indexer = self.ref_items.get_indexer(self.items)
     *                 indexer = com._ensure_platform_int(indexer)
     *                 if (indexer == -1).any():             # <<<<<<<<<<<<<<
     *
     *                     # this means that we have nan's in our block
     */
          __pyx_t_4 = PyObject_RichCompare(__pyx_v_indexer, __pyx_int_neg_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_any); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          if (__pyx_t_6) {

     117:

     118:                     # this means that we have nan's in our block

     119:                     try:

            /* "pandas/internals.pyx":119
     *
     *                     # this means that we have nan's in our block
     *                     try:             # <<<<<<<<<<<<<<
     *                         indexer[indexer == -1] = np.arange(
     *                             len(self.items))[isnull(self.items)]
     */
            {
              /*try:*/ {

     120:                         indexer[indexer == -1] = np.arange(

                /* "pandas/internals.pyx":120
     *                     # this means that we have nan's in our block
     *                     try:
     *                         indexer[indexer == -1] = np.arange(             # <<<<<<<<<<<<<<
     *                             len(self.items))[isnull(self.items)]
     *                     except:
     */
                __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_4);
                __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_1);
                __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

                /* "pandas/internals.pyx":120
     *                     # this means that we have nan's in our block
     *                     try:
     *                         indexer[indexer == -1] = np.arange(             # <<<<<<<<<<<<<<
     *                             len(self.items))[isnull(self.items)]
     *                     except:
     */
                __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_5);
                PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
                __Pyx_GIVEREF(__pyx_t_4);
                __pyx_t_4 = 0;
                __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_4);
                __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
                __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

                /* "pandas/internals.pyx":120
     *                     # this means that we have nan's in our block
     *                     try:
     *                         indexer[indexer == -1] = np.arange(             # <<<<<<<<<<<<<<
     *                             len(self.items))[isnull(self.items)]
     *                     except:
     */
                __pyx_t_1 = PyObject_RichCompare(__pyx_v_indexer, __pyx_int_neg_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                if (unlikely(PyObject_SetItem(__pyx_v_indexer, __pyx_t_1, __pyx_t_11) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 120; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
                __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              }
              __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
              __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
              __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
              goto __pyx_L13_try_end;
              __pyx_L6_error:;
              __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
              __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
              __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
              __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;

     121:                             len(self.items))[isnull(self.items)]

                /* "pandas/internals.pyx":121
     *                     try:
     *                         indexer[indexer == -1] = np.arange(
     *                             len(self.items))[isnull(self.items)]             # <<<<<<<<<<<<<<
     *                     except:
     *                         raise AssertionError('Some block items were not in '
     */
                __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_4);
                __pyx_t_7 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_7); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_4);

                /* "pandas/internals.pyx":121
     *                     try:
     *                         indexer[indexer == -1] = np.arange(
     *                             len(self.items))[isnull(self.items)]             # <<<<<<<<<<<<<<
     *                     except:
     *                         raise AssertionError('Some block items were not in '
     */
                __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_5);
                __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_1);
                __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_11);
                PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_1);
                __Pyx_GIVEREF(__pyx_t_1);
                __pyx_t_1 = 0;
                __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_11, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_1);
                __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
                __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
                __pyx_t_11 = PyObject_GetItem(__pyx_t_4, __pyx_t_1); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 121; __pyx_clineno = __LINE__; goto __pyx_L6_error;};
                __Pyx_GOTREF(__pyx_t_11);
                __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     122:                     except:

              /* "pandas/internals.pyx":122
     *                         indexer[indexer == -1] = np.arange(
     *                             len(self.items))[isnull(self.items)]
     *                     except:             # <<<<<<<<<<<<<<
     *                         raise AssertionError('Some block items were not in '
     *                                              'block ref_items')
     */
              /*except:*/ {
                __Pyx_AddTraceback("pandas.internals.Block.ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
                if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_1, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
                __Pyx_GOTREF(__pyx_t_11);
                __Pyx_GOTREF(__pyx_t_1);
                __Pyx_GOTREF(__pyx_t_4);

     123:                         raise AssertionError('Some block items were not in '

                /* "pandas/internals.pyx":123
     *                             len(self.items))[isnull(self.items)]
     *                     except:
     *                         raise AssertionError('Some block items were not in '             # <<<<<<<<<<<<<<
     *                                              'block ref_items')
     *
     */
                __pyx_t_5 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__2, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
                __Pyx_GOTREF(__pyx_t_5);
                __Pyx_Raise(__pyx_t_5, 0, 0, 0);
                __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
                __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
                __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
                __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                goto __pyx_L7_exception_handled;
              }
              __pyx_L8_except_error:;
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
              goto __pyx_L1_error;
              __pyx_L7_exception_handled:;
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
              __pyx_L13_try_end:;
            }
            goto __pyx_L5;
          }
          __pyx_L5:;
        }
        __pyx_L4:;

      /* "pandas/internals.pyx":123
     *                             len(self.items))[isnull(self.items)]
     *                     except:
     *                         raise AssertionError('Some block items were not in '             # <<<<<<<<<<<<<<
     *                                              'block ref_items')
     *
     */
      __pyx_tuple__2 = PyTuple_Pack(1, __pyx_kp_s_Some_block_items_were_not_in_blo); if (unlikely(!__pyx_tuple__2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__2);
      __Pyx_GIVEREF(__pyx_tuple__2);

     124:                                              'block ref_items')

     125:

     126:             self._ref_locs = indexer

        /* "pandas/internals.pyx":126
     *                                              'block ref_items')
     *
     *             self._ref_locs = indexer             # <<<<<<<<<<<<<<
     *         return self._ref_locs
     *
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, __pyx_v_indexer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L3;
      }
      __pyx_L3:;

     127:         return self._ref_locs

      /* "pandas/internals.pyx":127
     *
     *             self._ref_locs = indexer
     *         return self._ref_locs             # <<<<<<<<<<<<<<
     *
     *     def take_ref_locs(self, indexer):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     128:

     129:     def take_ref_locs(self, indexer):

    /* "pandas/internals.pyx":129
     *         return self._ref_locs
     *
     *     def take_ref_locs(self, indexer):             # <<<<<<<<<<<<<<
     *         """
     *         need to preserve the ref_locs and just shift them
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_13take_ref_locs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_12take_ref_locs[] = "\n        need to preserve the ref_locs and just shift them\n        return None if ref_locs is None\n\n        see GH6509\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_13take_ref_locs = {__Pyx_NAMESTR("take_ref_locs"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_13take_ref_locs, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_12take_ref_locs)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_13take_ref_locs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take_ref_locs (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take_ref_locs", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "take_ref_locs") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("take_ref_locs", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.take_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_12take_ref_locs(__pyx_self, __pyx_v_self, __pyx_v_indexer);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_12take_ref_locs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer) {
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_v_tindexer = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take_ref_locs", 0);

      /* "pandas/internals.pyx":129
     *         return self._ref_locs
     *
     *     def take_ref_locs(self, indexer):             # <<<<<<<<<<<<<<
     *         """
     *         need to preserve the ref_locs and just shift them
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.Block.take_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XDECREF(__pyx_v_tindexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":129
     *         return self._ref_locs
     *
     *     def take_ref_locs(self, indexer):             # <<<<<<<<<<<<<<
     *         """
     *         need to preserve the ref_locs and just shift them
     */
      __pyx_tuple__166 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_ref_locs_2, __pyx_n_s_tindexer); if (unlikely(!__pyx_tuple__166)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__166);
      __Pyx_GIVEREF(__pyx_tuple__166);

      /* "pandas/internals.pyx":129
     *         return self._ref_locs
     *
     *     def take_ref_locs(self, indexer):             # <<<<<<<<<<<<<<
     *         """
     *         need to preserve the ref_locs and just shift them
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_13take_ref_locs, 0, __pyx_n_s_Block_take_ref_locs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__167)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_take_ref_locs, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__167 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__166, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_take_ref_locs, 129, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__167)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     130:         """

     131:         need to preserve the ref_locs and just shift them

     132:         return None if ref_locs is None

     133:

     134:         see GH6509

     135:         """

     136:

     137:         ref_locs = self._ref_locs

      /* "pandas/internals.pyx":137
     *         """
     *
     *         ref_locs = self._ref_locs             # <<<<<<<<<<<<<<
     *         if ref_locs is None:
     *             return None
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_ref_locs = __pyx_t_1;
      __pyx_t_1 = 0;

     138:         if ref_locs is None:

      /* "pandas/internals.pyx":138
     *
     *         ref_locs = self._ref_locs
     *         if ref_locs is None:             # <<<<<<<<<<<<<<
     *             return None
     *
     */
      __pyx_t_2 = (__pyx_v_ref_locs == Py_None);
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     139:             return None

        /* "pandas/internals.pyx":139
     *         ref_locs = self._ref_locs
     *         if ref_locs is None:
     *             return None             # <<<<<<<<<<<<<<
     *
     *         tindexer = np.ones(len(ref_locs),dtype=bool)
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_None);
        __pyx_r = Py_None;
        goto __pyx_L0;
      }

     140:

     141:         tindexer = np.ones(len(ref_locs),dtype=bool)

      /* "pandas/internals.pyx":141
     *             return None
     *
     *         tindexer = np.ones(len(ref_locs),dtype=bool)             # <<<<<<<<<<<<<<
     *         tindexer[indexer] = False
     *         tindexer = tindexer.astype(int).cumsum()[indexer]
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ones); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_5 = PyObject_Length(__pyx_v_ref_locs); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, ((PyObject*)&PyBool_Type)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_7 = PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_tindexer = __pyx_t_7;
      __pyx_t_7 = 0;

     142:         tindexer[indexer] = False

      /* "pandas/internals.pyx":142
     *
     *         tindexer = np.ones(len(ref_locs),dtype=bool)
     *         tindexer[indexer] = False             # <<<<<<<<<<<<<<
     *         tindexer = tindexer.astype(int).cumsum()[indexer]
     *         ref_locs = ref_locs[indexer]
     */
      if (unlikely(PyObject_SetItem(__pyx_v_tindexer, __pyx_v_indexer, Py_False) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     143:         tindexer = tindexer.astype(int).cumsum()[indexer]

      /* "pandas/internals.pyx":143
     *         tindexer = np.ones(len(ref_locs),dtype=bool)
     *         tindexer[indexer] = False
     *         tindexer = tindexer.astype(int).cumsum()[indexer]             # <<<<<<<<<<<<<<
     *         ref_locs = ref_locs[indexer]
     *         ref_locs -= tindexer
     */
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_tindexer, __pyx_n_s_astype); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)((PyObject*)(&PyInt_Type))));
      __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      __pyx_t_6 = PyObject_Call(__pyx_t_7, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_cumsum); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_GetItem(__pyx_t_6, __pyx_v_indexer); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF_SET(__pyx_v_tindexer, __pyx_t_1);
      __pyx_t_1 = 0;

     144:         ref_locs = ref_locs[indexer]

      /* "pandas/internals.pyx":144
     *         tindexer[indexer] = False
     *         tindexer = tindexer.astype(int).cumsum()[indexer]
     *         ref_locs = ref_locs[indexer]             # <<<<<<<<<<<<<<
     *         ref_locs -= tindexer
     *         return ref_locs
     */
      __pyx_t_1 = PyObject_GetItem(__pyx_v_ref_locs, __pyx_v_indexer); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF_SET(__pyx_v_ref_locs, __pyx_t_1);
      __pyx_t_1 = 0;

     145:         ref_locs -= tindexer

      /* "pandas/internals.pyx":145
     *         tindexer = tindexer.astype(int).cumsum()[indexer]
     *         ref_locs = ref_locs[indexer]
     *         ref_locs -= tindexer             # <<<<<<<<<<<<<<
     *         return ref_locs
     *
     */
      __pyx_t_1 = PyNumber_InPlaceSubtract(__pyx_v_ref_locs, __pyx_v_tindexer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF_SET(__pyx_v_ref_locs, __pyx_t_1);
      __pyx_t_1 = 0;

     146:         return ref_locs

      /* "pandas/internals.pyx":146
     *         ref_locs = ref_locs[indexer]
     *         ref_locs -= tindexer
     *         return ref_locs             # <<<<<<<<<<<<<<
     *
     *     def reset_ref_locs(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_ref_locs);
      __pyx_r = __pyx_v_ref_locs;
      goto __pyx_L0;

     147:

     148:     def reset_ref_locs(self):

    /* "pandas/internals.pyx":148
     *         return ref_locs
     *
     *     def reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ reset the block ref_locs """
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_15reset_ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_14reset_ref_locs[] = " reset the block ref_locs ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_15reset_ref_locs = {__Pyx_NAMESTR("reset_ref_locs"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_15reset_ref_locs, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_14reset_ref_locs)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_15reset_ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reset_ref_locs (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_14reset_ref_locs(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_14reset_ref_locs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reset_ref_locs", 0);

      /* "pandas/internals.pyx":148
     *         return ref_locs
     *
     *     def reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ reset the block ref_locs """
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.Block.reset_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":148
     *         return ref_locs
     *
     *     def reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ reset the block ref_locs """
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     */
      __pyx_tuple__168 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__168)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__168);
      __Pyx_GIVEREF(__pyx_tuple__168);

      /* "pandas/internals.pyx":148
     *         return ref_locs
     *
     *     def reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ reset the block ref_locs """
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_15reset_ref_locs, 0, __pyx_n_s_Block_reset_ref_locs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__169)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reset_ref_locs, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__169 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__168, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reset_ref_locs, 148, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__169)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     149:         """ reset the block ref_locs """

     150:         self._ref_locs = np.empty(len(self.items), dtype='int64')

      /* "pandas/internals.pyx":150
     *     def reset_ref_locs(self):
     *         """ reset the block ref_locs """
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')             # <<<<<<<<<<<<<<
     *
     *     def set_ref_locs(self, placement):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_n_s_int64) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     151:

     152:     def set_ref_locs(self, placement):

    /* "pandas/internals.pyx":152
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     *
     *     def set_ref_locs(self, placement):             # <<<<<<<<<<<<<<
     *         """ explicity set the ref_locs indexer, only necessary for duplicate
     *         indicies
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_17set_ref_locs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_16set_ref_locs[] = " explicity set the ref_locs indexer, only necessary for duplicate\n        indicies\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_17set_ref_locs = {__Pyx_NAMESTR("set_ref_locs"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_17set_ref_locs, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_16set_ref_locs)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_17set_ref_locs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_placement = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_ref_locs (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_placement,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_placement)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_ref_locs", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set_ref_locs") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_placement = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set_ref_locs", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.set_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_16set_ref_locs(__pyx_self, __pyx_v_self, __pyx_v_placement);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_16set_ref_locs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_placement) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_ref_locs", 0);

      /* "pandas/internals.pyx":152
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     *
     *     def set_ref_locs(self, placement):             # <<<<<<<<<<<<<<
     *         """ explicity set the ref_locs indexer, only necessary for duplicate
     *         indicies
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.set_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":152
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     *
     *     def set_ref_locs(self, placement):             # <<<<<<<<<<<<<<
     *         """ explicity set the ref_locs indexer, only necessary for duplicate
     *         indicies
     */
      __pyx_tuple__170 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_placement); if (unlikely(!__pyx_tuple__170)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__170);
      __Pyx_GIVEREF(__pyx_tuple__170);

      /* "pandas/internals.pyx":152
     *         self._ref_locs = np.empty(len(self.items), dtype='int64')
     *
     *     def set_ref_locs(self, placement):             # <<<<<<<<<<<<<<
     *         """ explicity set the ref_locs indexer, only necessary for duplicate
     *         indicies
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_17set_ref_locs, 0, __pyx_n_s_Block_set_ref_locs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__171)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_ref_locs, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__171 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__170, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_ref_locs, 152, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__171)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     153:         """ explicity set the ref_locs indexer, only necessary for duplicate

     154:         indicies

     155:         """

     156:         if placement is None:

      /* "pandas/internals.pyx":156
     *         indicies
     *         """
     *         if placement is None:             # <<<<<<<<<<<<<<
     *             self._ref_locs = None
     *         else:
     */
      __pyx_t_1 = (__pyx_v_placement == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     157:             self._ref_locs = None

        /* "pandas/internals.pyx":157
     *         """
     *         if placement is None:
     *             self._ref_locs = None             # <<<<<<<<<<<<<<
     *         else:
     *             self._ref_locs = np.array(placement, dtype='int64', copy=True)
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 157; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L3;
      }
      /*else*/ {

     158:         else:

     159:             self._ref_locs = np.array(placement, dtype='int64', copy=True)

        /* "pandas/internals.pyx":159
     *             self._ref_locs = None
     *         else:
     *             self._ref_locs = np.array(placement, dtype='int64', copy=True)             # <<<<<<<<<<<<<<
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_placement);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_placement);
        __Pyx_GIVEREF(__pyx_v_placement);
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_n_s_int64) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_copy, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      }
      __pyx_L3:;

     160:

     161:     def set_ref_items(self, ref_items, maybe_rename=True):

    /* "pandas/internals.pyx":161
     *             self._ref_locs = np.array(placement, dtype='int64', copy=True)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """
     *         If maybe_rename=True, need to set the items for this guy
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_19set_ref_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_18set_ref_items[] = "\n        If maybe_rename=True, need to set the items for this guy\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_19set_ref_items = {__Pyx_NAMESTR("set_ref_items"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_19set_ref_items, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_18set_ref_items)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_19set_ref_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_maybe_rename = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_ref_items (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_ref_items,&__pyx_n_s_maybe_rename,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_ref_items", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_maybe_rename);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set_ref_items") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_ref_items = values[1];
        __pyx_v_maybe_rename = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set_ref_items", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.set_ref_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_18set_ref_items(__pyx_self, __pyx_v_self, __pyx_v_ref_items, __pyx_v_maybe_rename);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_18set_ref_items(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_maybe_rename) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_ref_items", 0);

      /* "pandas/internals.pyx":161
     *             self._ref_locs = np.array(placement, dtype='int64', copy=True)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """
     *         If maybe_rename=True, need to set the items for this guy
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.Block.set_ref_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":161
     *             self._ref_locs = np.array(placement, dtype='int64', copy=True)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """
     *         If maybe_rename=True, need to set the items for this guy
     */
      __pyx_tuple__172 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_ref_items, __pyx_n_s_maybe_rename); if (unlikely(!__pyx_tuple__172)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__172);
      __Pyx_GIVEREF(__pyx_tuple__172);
      __pyx_codeobj__173 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__172, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_ref_items, 161, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__173)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":161
     *             self._ref_locs = np.array(placement, dtype='int64', copy=True)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """
     *         If maybe_rename=True, need to set the items for this guy
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_19set_ref_items, 0, __pyx_n_s_Block_set_ref_items, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__173)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__174);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_ref_items, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__174 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__174)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__174);
      __Pyx_GIVEREF(__pyx_tuple__174);

     162:         """

     163:         If maybe_rename=True, need to set the items for this guy

     164:         """

     165:         if not isinstance(ref_items, Index):

      /* "pandas/internals.pyx":165
     *         If maybe_rename=True, need to set the items for this guy
     *         """
     *         if not isinstance(ref_items, Index):             # <<<<<<<<<<<<<<
     *             raise AssertionError('block ref_items must be an Index')
     *         if maybe_rename == 'clear':
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_IsInstance(__pyx_v_ref_items, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = ((!(__pyx_t_2 != 0)) != 0);
      if (__pyx_t_3) {

     166:             raise AssertionError('block ref_items must be an Index')

        /* "pandas/internals.pyx":166
     *         """
     *         if not isinstance(ref_items, Index):
     *             raise AssertionError('block ref_items must be an Index')             # <<<<<<<<<<<<<<
     *         if maybe_rename == 'clear':
     *             self._ref_locs = None
     */
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":166
     *         """
     *         if not isinstance(ref_items, Index):
     *             raise AssertionError('block ref_items must be an Index')             # <<<<<<<<<<<<<<
     *         if maybe_rename == 'clear':
     *             self._ref_locs = None
     */
      __pyx_tuple__3 = PyTuple_Pack(1, __pyx_kp_s_block_ref_items_must_be_an_Index); if (unlikely(!__pyx_tuple__3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__3);
      __Pyx_GIVEREF(__pyx_tuple__3);

     167:         if maybe_rename == 'clear':

      /* "pandas/internals.pyx":167
     *         if not isinstance(ref_items, Index):
     *             raise AssertionError('block ref_items must be an Index')
     *         if maybe_rename == 'clear':             # <<<<<<<<<<<<<<
     *             self._ref_locs = None
     *         elif maybe_rename:
     */
      __pyx_t_3 = (__Pyx_PyString_Equals(__pyx_v_maybe_rename, __pyx_n_s_clear, Py_EQ)); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 167; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_3) {

     168:             self._ref_locs = None

        /* "pandas/internals.pyx":168
     *             raise AssertionError('block ref_items must be an Index')
     *         if maybe_rename == 'clear':
     *             self._ref_locs = None             # <<<<<<<<<<<<<<
     *         elif maybe_rename:
     *             self.items = ref_items.take(self.ref_locs)
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L4;
      }

     169:         elif maybe_rename:

      /* "pandas/internals.pyx":169
     *         if maybe_rename == 'clear':
     *             self._ref_locs = None
     *         elif maybe_rename:             # <<<<<<<<<<<<<<
     *             self.items = ref_items.take(self.ref_locs)
     *         self.ref_items = ref_items
     */
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_maybe_rename); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_3) {

     170:             self.items = ref_items.take(self.ref_locs)

        /* "pandas/internals.pyx":170
     *             self._ref_locs = None
     *         elif maybe_rename:
     *             self.items = ref_items.take(self.ref_locs)             # <<<<<<<<<<<<<<
     *         self.ref_items = ref_items
     *
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_ref_items, __pyx_n_s_take); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     171:         self.ref_items = ref_items

      /* "pandas/internals.pyx":171
     *         elif maybe_rename:
     *             self.items = ref_items.take(self.ref_locs)
     *         self.ref_items = ref_items             # <<<<<<<<<<<<<<
     *
     *     def __unicode__(self):
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_items, __pyx_v_ref_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     172:

     173:     def __unicode__(self):

    /* "pandas/internals.pyx":173
     *         self.ref_items = ref_items
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *
     *         # don't want to print out all of the items here
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_21__unicode__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_21__unicode__ = {__Pyx_NAMESTR("__unicode__"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_21__unicode__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_21__unicode__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__unicode__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_20__unicode__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_20__unicode__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_name = NULL;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_shape = NULL;
      PyObject *__pyx_v_s = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__unicode__", 0);

      /* "pandas/internals.pyx":173
     *         self.ref_items = ref_items
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *
     *         # don't want to print out all of the items here
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.Block.__unicode__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_name);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_shape);
      __Pyx_XDECREF(__pyx_v_s);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":173
     *         self.ref_items = ref_items
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *
     *         # don't want to print out all of the items here
     */
      __pyx_tuple__175 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_name, __pyx_n_s_result, __pyx_n_s_shape, __pyx_n_s_s); if (unlikely(!__pyx_tuple__175)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__175);
      __Pyx_GIVEREF(__pyx_tuple__175);

      /* "pandas/internals.pyx":173
     *         self.ref_items = ref_items
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *
     *         # don't want to print out all of the items here
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_21__unicode__, 0, __pyx_n_s_Block___unicode, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__176)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_unicode, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__176 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__175, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_unicode, 173, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__176)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     174:

     175:         # don't want to print out all of the items here

     176:         name = com.pprint_thing(self.__class__.__name__)

      /* "pandas/internals.pyx":176
     *
     *         # don't want to print out all of the items here
     *         name = com.pprint_thing(self.__class__.__name__)             # <<<<<<<<<<<<<<
     *         if self._is_single_block:
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_pprint_thing); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_name_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_name = __pyx_t_3;
      __pyx_t_3 = 0;

     177:         if self._is_single_block:

      /* "pandas/internals.pyx":177
     *         # don't want to print out all of the items here
     *         name = com.pprint_thing(self.__class__.__name__)
     *         if self._is_single_block:             # <<<<<<<<<<<<<<
     *
     *             result = '%s: %s dtype: %s' % (
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_single_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     178:

     179:             result = '%s: %s dtype: %s' % (

        /* "pandas/internals.pyx":179
     *         if self._is_single_block:
     *
     *             result = '%s: %s dtype: %s' % (             # <<<<<<<<<<<<<<
     *                 name, len(self), self.dtype)
     *
     */
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_s_s_dtype_s, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_result = ((PyObject*)__pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     180:                 name, len(self), self.dtype)

        /* "pandas/internals.pyx":180
     *
     *             result = '%s: %s dtype: %s' % (
     *                 name, len(self), self.dtype)             # <<<<<<<<<<<<<<
     *
     *         else:
     */
        __pyx_t_5 = PyObject_Length(__pyx_v_self); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_name);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_name);
        __Pyx_GIVEREF(__pyx_v_name);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_3 = 0;
        __pyx_t_1 = 0;

     181:

     182:         else:

     183:

     184:             shape = ' x '.join([com.pprint_thing(s) for s in self.shape])

        /* "pandas/internals.pyx":184
     *         else:
     *
     *             shape = ' x '.join([com.pprint_thing(s) for s in self.shape])             # <<<<<<<<<<<<<<
     *             result = '%s: %s, %s, dtype: %s' % (
     *                 name, com.pprint_thing(self.items), shape, self.dtype)
     */
        __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
          __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = Py_TYPE(__pyx_t_3)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_3)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_3)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_2 = __pyx_t_6(__pyx_t_3);
            if (unlikely(!__pyx_t_2)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_2);
          }
          __Pyx_XDECREF_SET(__pyx_v_s, __pyx_t_2);
          __pyx_t_2 = 0;
          __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_pprint_thing); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_s);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_s);
          __Pyx_GIVEREF(__pyx_v_s);
          __pyx_t_8 = PyObject_Call(__pyx_t_7, __pyx_t_2, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_8))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyString_Join(__pyx_kp_s_x, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_shape = ((PyObject*)__pyx_t_3);
        __pyx_t_3 = 0;

     185:             result = '%s: %s, %s, dtype: %s' % (

        /* "pandas/internals.pyx":185
     *
     *             shape = ' x '.join([com.pprint_thing(s) for s in self.shape])
     *             result = '%s: %s, %s, dtype: %s' % (             # <<<<<<<<<<<<<<
     *                 name, com.pprint_thing(self.items), shape, self.dtype)
     *
     */
        __pyx_t_8 = __Pyx_PyString_Format(__pyx_kp_s_s_s_s_dtype_s, __pyx_t_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_result = ((PyObject*)__pyx_t_8);
        __pyx_t_8 = 0;
      }
      __pyx_L3:;

     186:                 name, com.pprint_thing(self.items), shape, self.dtype)

        /* "pandas/internals.pyx":186
     *             shape = ' x '.join([com.pprint_thing(s) for s in self.shape])
     *             result = '%s: %s, %s, dtype: %s' % (
     *                 name, com.pprint_thing(self.items), shape, self.dtype)             # <<<<<<<<<<<<<<
     *
     *         return result
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_pprint_thing); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_name);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_name);
        __Pyx_GIVEREF(__pyx_v_name);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_shape);
        PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_shape);
        __Pyx_GIVEREF(__pyx_v_shape);
        PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_t_8);
        __Pyx_GIVEREF(__pyx_t_8);
        __pyx_t_3 = 0;
        __pyx_t_8 = 0;

     187:

     188:         return result

      /* "pandas/internals.pyx":188
     *                 name, com.pprint_thing(self.items), shape, self.dtype)
     *
     *         return result             # <<<<<<<<<<<<<<
     *
     *     def __contains__(self, item):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     189:

     190:     def __contains__(self, item):

    /* "pandas/internals.pyx":190
     *         return result
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_23__contains__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_23__contains__ = {__Pyx_NAMESTR("__contains__"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_23__contains__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_23__contains__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__contains__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__contains__", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__contains__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__contains__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.__contains__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_22__contains__(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_22__contains__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__contains__", 0);

      /* "pandas/internals.pyx":190
     *         return result
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block.__contains__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":190
     *         return result
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */
      __pyx_tuple__177 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_item); if (unlikely(!__pyx_tuple__177)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__177);
      __Pyx_GIVEREF(__pyx_tuple__177);

      /* "pandas/internals.pyx":190
     *         return result
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_23__contains__, 0, __pyx_n_s_Block___contains, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__178)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_contains, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__178 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__177, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_contains, 190, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__178)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     191:         return item in self.items

      /* "pandas/internals.pyx":191
     *
     *     def __contains__(self, item):
     *         return item in self.items             # <<<<<<<<<<<<<<
     *
     *     def __len__(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = (__Pyx_PySequence_Contains(__pyx_v_item, __pyx_t_1, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 191; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     192:

     193:     def __len__(self):

    /* "pandas/internals.pyx":193
     *         return item in self.items
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_25__len__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_25__len__ = {__Pyx_NAMESTR("__len__"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_25__len__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_25__len__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__len__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_24__len__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_24__len__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__len__", 0);

      /* "pandas/internals.pyx":193
     *         return item in self.items
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block.__len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":193
     *         return item in self.items
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */
      __pyx_tuple__179 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__179)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__179);
      __Pyx_GIVEREF(__pyx_tuple__179);

      /* "pandas/internals.pyx":193
     *         return item in self.items
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_25__len__, 0, __pyx_n_s_Block___len, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__180)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_len, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__180 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__179, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_len, 193, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__180)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     194:         return len(self.values)

      /* "pandas/internals.pyx":194
     *
     *     def __len__(self):
     *         return len(self.values)             # <<<<<<<<<<<<<<
     *
     *     def __getstate__(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     195:

     196:     def __getstate__(self):

    /* "pandas/internals.pyx":196
     *         return len(self.values)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         # should not pickle generally (want to share ref_items), but here for
     *         # completeness
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_27__getstate__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_27__getstate__ = {__Pyx_NAMESTR("__getstate__"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_27__getstate__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_27__getstate__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__getstate__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_26__getstate__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_26__getstate__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__getstate__", 0);

      /* "pandas/internals.pyx":196
     *         return len(self.values)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         # should not pickle generally (want to share ref_items), but here for
     *         # completeness
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.__getstate__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":196
     *         return len(self.values)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         # should not pickle generally (want to share ref_items), but here for
     *         # completeness
     */
      __pyx_tuple__181 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__181)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__181);
      __Pyx_GIVEREF(__pyx_tuple__181);

      /* "pandas/internals.pyx":196
     *         return len(self.values)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         # should not pickle generally (want to share ref_items), but here for
     *         # completeness
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_27__getstate__, 0, __pyx_n_s_Block___getstate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__182)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_getstate, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__182 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__181, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_getstate, 196, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__182)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     197:         # should not pickle generally (want to share ref_items), but here for

     198:         # completeness

     199:         return (self.items, self.ref_items, self.values)

      /* "pandas/internals.pyx":199
     *         # should not pickle generally (want to share ref_items), but here for
     *         # completeness
     *         return (self.items, self.ref_items, self.values)             # <<<<<<<<<<<<<<
     *
     *     def __setstate__(self, state):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_1 = 0;
      __pyx_t_2 = 0;
      __pyx_t_3 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     200:

     201:     def __setstate__(self, state):

    /* "pandas/internals.pyx":201
     *         return (self.items, self.ref_items, self.values)
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         items, ref_items, values = state
     *         self.items = _ensure_index(items)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_29__setstate__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_29__setstate__ = {__Pyx_NAMESTR("__setstate__"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_29__setstate__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_29__setstate__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_state = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__setstate__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_state,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_state)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__setstate__", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__setstate__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_state = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__setstate__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.__setstate__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_28__setstate__(__pyx_self, __pyx_v_self, __pyx_v_state);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_28__setstate__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_state) {
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_ref_items = NULL;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__setstate__", 0);

      /* "pandas/internals.pyx":201
     *         return (self.items, self.ref_items, self.values)
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         items, ref_items, values = state
     *         self.items = _ensure_index(items)
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.__setstate__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_ref_items);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":201
     *         return (self.items, self.ref_items, self.values)
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         items, ref_items, values = state
     *         self.items = _ensure_index(items)
     */
      __pyx_tuple__183 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_state, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_values); if (unlikely(!__pyx_tuple__183)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__183);
      __Pyx_GIVEREF(__pyx_tuple__183);

      /* "pandas/internals.pyx":201
     *         return (self.items, self.ref_items, self.values)
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         items, ref_items, values = state
     *         self.items = _ensure_index(items)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_29__setstate__, 0, __pyx_n_s_Block___setstate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__184)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_setstate, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__184 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__183, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_setstate, 201, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__184)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     202:         items, ref_items, values = state

      /* "pandas/internals.pyx":202
     *
     *     def __setstate__(self, state):
     *         items, ref_items, values = state             # <<<<<<<<<<<<<<
     *         self.items = _ensure_index(items)
     *         self.ref_items = _ensure_index(ref_items)
     */
      if ((likely(PyTuple_CheckExact(__pyx_v_state))) || (PyList_CheckExact(__pyx_v_state))) {
        PyObject* sequence = __pyx_v_state;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 3)) {
          if (size > 3) __Pyx_RaiseTooManyValuesError(3);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 2);
        } else {
          __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
          __pyx_t_3 = PyList_GET_ITEM(sequence, 2);
        }
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        #else
        __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        #endif
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_v_state); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        index = 1; __pyx_t_2 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 2; __pyx_t_3 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_items = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_v_ref_items = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_v_values = __pyx_t_3;
      __pyx_t_3 = 0;

     203:         self.items = _ensure_index(items)

      /* "pandas/internals.pyx":203
     *     def __setstate__(self, state):
     *         items, ref_items, values = state
     *         self.items = _ensure_index(items)             # <<<<<<<<<<<<<<
     *         self.ref_items = _ensure_index(ref_items)
     *         self.values = values
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     204:         self.ref_items = _ensure_index(ref_items)

      /* "pandas/internals.pyx":204
     *         items, ref_items, values = state
     *         self.items = _ensure_index(items)
     *         self.ref_items = _ensure_index(ref_items)             # <<<<<<<<<<<<<<
     *         self.values = values
     *         self.ndim = values.ndim
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_items, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 204; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     205:         self.values = values

      /* "pandas/internals.pyx":205
     *         self.items = _ensure_index(items)
     *         self.ref_items = _ensure_index(ref_items)
     *         self.values = values             # <<<<<<<<<<<<<<
     *         self.ndim = values.ndim
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values, __pyx_v_values) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     206:         self.ndim = values.ndim

      /* "pandas/internals.pyx":206
     *         self.ref_items = _ensure_index(ref_items)
     *         self.values = values
     *         self.ndim = values.ndim             # <<<<<<<<<<<<<<
     *
     *     def _slice(self, slicer):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ndim, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     207:

     208:     def _slice(self, slicer):

    /* "pandas/internals.pyx":208
     *         self.ndim = values.ndim
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values """
     *         return self.values[slicer]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_31_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_30_slice[] = " return a slice of my values ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_31_slice = {__Pyx_NAMESTR("_slice"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_31_slice, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_30_slice)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_31_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slicer = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_slice (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slicer,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slicer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_slice", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_slice") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_slicer = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_slice", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_30_slice(__pyx_self, __pyx_v_self, __pyx_v_slicer);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_30_slice(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slicer) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_slice", 0);

      /* "pandas/internals.pyx":208
     *         self.ndim = values.ndim
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values """
     *         return self.values[slicer]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.Block._slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":208
     *         self.ndim = values.ndim
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values """
     *         return self.values[slicer]
     */
      __pyx_tuple__185 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_slicer); if (unlikely(!__pyx_tuple__185)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__185);
      __Pyx_GIVEREF(__pyx_tuple__185);

      /* "pandas/internals.pyx":208
     *         self.ndim = values.ndim
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values """
     *         return self.values[slicer]
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_31_slice, 0, __pyx_n_s_Block__slice, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__186)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_slice, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__186 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__185, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_slice, 208, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__186)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     209:         """ return a slice of my values """

     210:         return self.values[slicer]

      /* "pandas/internals.pyx":210
     *     def _slice(self, slicer):
     *         """ return a slice of my values """
     *         return self.values[slicer]             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_slicer); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 210; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     211:

     212:     @property

      /* "pandas/internals.pyx":212
     *         return self.values[slicer]
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def shape(self):
     *         return self.values.shape
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 212; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_shape, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     213:     def shape(self):

    /* "pandas/internals.pyx":213
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return self.values.shape
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_33shape(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_33shape = {__Pyx_NAMESTR("shape"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_33shape, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_33shape(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_32shape(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_32shape(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape", 0);

      /* "pandas/internals.pyx":213
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return self.values.shape
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.Block.shape", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":213
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return self.values.shape
     *
     */
      __pyx_tuple__187 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__187)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__187);
      __Pyx_GIVEREF(__pyx_tuple__187);

      /* "pandas/internals.pyx":213
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return self.values.shape
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_33shape, 0, __pyx_n_s_Block_shape, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__188)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__188 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__187, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shape, 213, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__188)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     214:         return self.values.shape

      /* "pandas/internals.pyx":214
     *     @property
     *     def shape(self):
     *         return self.values.shape             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 214; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     215:

     216:     @property

      /* "pandas/internals.pyx":216
     *         return self.values.shape
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def itemsize(self):
     *         return self.values.itemsize
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 216; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_itemsize, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     217:     def itemsize(self):

    /* "pandas/internals.pyx":217
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.values.itemsize
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_35itemsize(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_35itemsize = {__Pyx_NAMESTR("itemsize"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_35itemsize, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_35itemsize(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("itemsize (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_34itemsize(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_34itemsize(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("itemsize", 0);

      /* "pandas/internals.pyx":217
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.values.itemsize
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.Block.itemsize", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":217
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.values.itemsize
     *
     */
      __pyx_tuple__189 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__189)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__189);
      __Pyx_GIVEREF(__pyx_tuple__189);

      /* "pandas/internals.pyx":217
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.values.itemsize
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_35itemsize, 0, __pyx_n_s_Block_itemsize, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__190)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__190 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__189, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_itemsize, 217, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__190)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 217; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     218:         return self.values.itemsize

      /* "pandas/internals.pyx":218
     *     @property
     *     def itemsize(self):
     *         return self.values.itemsize             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     219:

     220:     @property

      /* "pandas/internals.pyx":220
     *         return self.values.itemsize
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def dtype(self):
     *         return self.values.dtype
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_dtype, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     221:     def dtype(self):

    /* "pandas/internals.pyx":221
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self.values.dtype
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_37dtype(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_37dtype = {__Pyx_NAMESTR("dtype"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_37dtype, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_37dtype(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("dtype (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_36dtype(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_36dtype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("dtype", 0);

      /* "pandas/internals.pyx":221
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self.values.dtype
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.Block.dtype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":221
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self.values.dtype
     *
     */
      __pyx_tuple__191 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__191)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__191);
      __Pyx_GIVEREF(__pyx_tuple__191);

      /* "pandas/internals.pyx":221
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self.values.dtype
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_37dtype, 0, __pyx_n_s_Block_dtype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__192)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__192 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__191, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_dtype, 221, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__192)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 221; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     222:         return self.values.dtype

      /* "pandas/internals.pyx":222
     *     @property
     *     def dtype(self):
     *         return self.values.dtype             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     223:

     224:     @property

      /* "pandas/internals.pyx":224
     *         return self.values.dtype
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def ftype(self):
     *         return "%s:%s" % (self.dtype, self._ftype)
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 224; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ftype_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     225:     def ftype(self):

    /* "pandas/internals.pyx":225
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_39ftype(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_39ftype = {__Pyx_NAMESTR("ftype"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_39ftype, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_39ftype(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ftype (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_38ftype(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_38ftype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ftype", 0);

      /* "pandas/internals.pyx":225
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.Block.ftype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":225
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     */
      __pyx_tuple__193 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__193)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__193);
      __Pyx_GIVEREF(__pyx_tuple__193);

      /* "pandas/internals.pyx":225
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_39ftype, 0, __pyx_n_s_Block_ftype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__194)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__194 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__193, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_ftype_2, 225, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__194)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     226:         return "%s:%s" % (self.dtype, self._ftype)

      /* "pandas/internals.pyx":226
     *     @property
     *     def ftype(self):
     *         return "%s:%s" % (self.dtype, self._ftype)             # <<<<<<<<<<<<<<
     *
     *     def as_block(self, result):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ftype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_1 = 0;
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_s_s, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     227:

     228:     def as_block(self, result):

    /* "pandas/internals.pyx":228
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     *     def as_block(self, result):             # <<<<<<<<<<<<<<
     *         """ if we are not a block, then wrap as a block, must have compatible shape """
     *         if not isinstance(result, Block):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_41as_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_40as_block[] = " if we are not a block, then wrap as a block, must have compatible shape ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_41as_block = {__Pyx_NAMESTR("as_block"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_41as_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_40as_block)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_41as_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_result = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("as_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_result,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("as_block", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "as_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_result = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("as_block", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.as_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_40as_block(__pyx_self, __pyx_v_self, __pyx_v_result);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_40as_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_result) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("as_block", 0);
      __Pyx_INCREF(__pyx_v_result);

      /* "pandas/internals.pyx":228
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     *     def as_block(self, result):             # <<<<<<<<<<<<<<
     *         """ if we are not a block, then wrap as a block, must have compatible shape """
     *         if not isinstance(result, Block):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.as_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":228
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     *     def as_block(self, result):             # <<<<<<<<<<<<<<
     *         """ if we are not a block, then wrap as a block, must have compatible shape """
     *         if not isinstance(result, Block):
     */
      __pyx_tuple__195 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_result); if (unlikely(!__pyx_tuple__195)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__195);
      __Pyx_GIVEREF(__pyx_tuple__195);

      /* "pandas/internals.pyx":228
     *         return "%s:%s" % (self.dtype, self._ftype)
     *
     *     def as_block(self, result):             # <<<<<<<<<<<<<<
     *         """ if we are not a block, then wrap as a block, must have compatible shape """
     *         if not isinstance(result, Block):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_41as_block, 0, __pyx_n_s_Block_as_block, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__196)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_as_block, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__196 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__195, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_as_block, 228, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__196)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     229:         """ if we are not a block, then wrap as a block, must have compatible shape """

     230:         if not isinstance(result, Block):

      /* "pandas/internals.pyx":230
     *     def as_block(self, result):
     *         """ if we are not a block, then wrap as a block, must have compatible shape """
     *         if not isinstance(result, Block):             # <<<<<<<<<<<<<<
     *             result = make_block(result,
     *                                 self.items,
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_IsInstance(__pyx_v_result, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 230; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = ((!(__pyx_t_2 != 0)) != 0);
      if (__pyx_t_3) {

     231:             result = make_block(result,

        /* "pandas/internals.pyx":231
     *         """ if we are not a block, then wrap as a block, must have compatible shape """
     *         if not isinstance(result, Block):
     *             result = make_block(result,             # <<<<<<<<<<<<<<
     *                                 self.items,
     *                                 self.ref_items)
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":231
     *         """ if we are not a block, then wrap as a block, must have compatible shape """
     *         if not isinstance(result, Block):
     *             result = make_block(result,             # <<<<<<<<<<<<<<
     *                                 self.items,
     *                                 self.ref_items)
     */
        __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_4 = 0;
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_5);
        __pyx_t_5 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     232:                                 self.items,

        /* "pandas/internals.pyx":232
     *         if not isinstance(result, Block):
     *             result = make_block(result,
     *                                 self.items,             # <<<<<<<<<<<<<<
     *                                 self.ref_items)
     *         return result
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 232; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);

     233:                                 self.ref_items)

        /* "pandas/internals.pyx":233
     *             result = make_block(result,
     *                                 self.items,
     *                                 self.ref_items)             # <<<<<<<<<<<<<<
     *         return result
     *
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

     234:         return result

      /* "pandas/internals.pyx":234
     *                                 self.items,
     *                                 self.ref_items)
     *         return result             # <<<<<<<<<<<<<<
     *
     *     def merge(self, other):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     235:

     236:     def merge(self, other):

    /* "pandas/internals.pyx":236
     *         return result
     *
     *     def merge(self, other):             # <<<<<<<<<<<<<<
     *         if not self.ref_items.equals(other.ref_items):
     *             raise AssertionError('Merge operands must have same ref_items')
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_43merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_43merge = {__Pyx_NAMESTR("merge"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_43merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_43merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("merge (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("merge", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("merge", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_42merge(__pyx_self, __pyx_v_self, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_42merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("merge", 0);

      /* "pandas/internals.pyx":236
     *         return result
     *
     *     def merge(self, other):             # <<<<<<<<<<<<<<
     *         if not self.ref_items.equals(other.ref_items):
     *             raise AssertionError('Merge operands must have same ref_items')
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":236
     *         return result
     *
     *     def merge(self, other):             # <<<<<<<<<<<<<<
     *         if not self.ref_items.equals(other.ref_items):
     *             raise AssertionError('Merge operands must have same ref_items')
     */
      __pyx_tuple__197 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_other); if (unlikely(!__pyx_tuple__197)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__197);
      __Pyx_GIVEREF(__pyx_tuple__197);

      /* "pandas/internals.pyx":236
     *         return result
     *
     *     def merge(self, other):             # <<<<<<<<<<<<<<
     *         if not self.ref_items.equals(other.ref_items):
     *             raise AssertionError('Merge operands must have same ref_items')
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_43merge, 0, __pyx_n_s_Block_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__198)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_merge, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__198 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__197, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_merge, 236, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__198)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 236; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     237:         if not self.ref_items.equals(other.ref_items):

      /* "pandas/internals.pyx":237
     *
     *     def merge(self, other):
     *         if not self.ref_items.equals(other.ref_items):             # <<<<<<<<<<<<<<
     *             raise AssertionError('Merge operands must have same ref_items')
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_equals); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {

     238:             raise AssertionError('Merge operands must have same ref_items')

        /* "pandas/internals.pyx":238
     *     def merge(self, other):
     *         if not self.ref_items.equals(other.ref_items):
     *             raise AssertionError('Merge operands must have same ref_items')             # <<<<<<<<<<<<<<
     *
     *         # Not sure whether to allow this or not
     */
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":238
     *     def merge(self, other):
     *         if not self.ref_items.equals(other.ref_items):
     *             raise AssertionError('Merge operands must have same ref_items')             # <<<<<<<<<<<<<<
     *
     *         # Not sure whether to allow this or not
     */
      __pyx_tuple__4 = PyTuple_Pack(1, __pyx_kp_s_Merge_operands_must_have_same_re); if (unlikely(!__pyx_tuple__4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 238; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__4);
      __Pyx_GIVEREF(__pyx_tuple__4);

     239:

     240:         # Not sure whether to allow this or not

     241:         # if not union_ref.equals(other.ref_items):

     242:         #     union_ref = self.ref_items + other.ref_items

     243:         return _merge_blocks([self, other], self.ref_items)

      /* "pandas/internals.pyx":243
     *         # if not union_ref.equals(other.ref_items):
     *         #     union_ref = self.ref_items + other.ref_items
     *         return _merge_blocks([self, other], self.ref_items)             # <<<<<<<<<<<<<<
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_merge_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyList_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_self);
      PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __Pyx_INCREF(__pyx_v_other);
      PyList_SET_ITEM(__pyx_t_3, 1, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_3 = 0;
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     244:

     245:     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,

    /* "pandas/internals.pyx":245
     *         return _merge_blocks([self, other], self.ref_items)
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_45reindex_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_44reindex_axis[] = "\n        Reindex using pre-computed indexer information\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_45reindex_axis = {__Pyx_NAMESTR("reindex_axis"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_45reindex_axis, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_44reindex_axis)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_45reindex_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      CYTHON_UNUSED PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_fill_value = 0;
      CYTHON_UNUSED PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_mask_info = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_axis,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_mask_info,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)__pyx_int_1));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":245
     *         return _merge_blocks([self, other], self.ref_items)
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_44reindex_axis(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, CYTHON_UNUSED PyObject *__pyx_v_method, PyObject *__pyx_v_axis, PyObject *__pyx_v_fill_value, CYTHON_UNUSED PyObject *__pyx_v_limit, PyObject *__pyx_v_mask_info) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis", 0);
      __Pyx_INCREF(__pyx_v_fill_value);

      /* "pandas/internals.pyx":245
     *         return _merge_blocks([self, other], self.ref_items)
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.reindex_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":245
     *         return _merge_blocks([self, other], self.ref_items)
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */
      __pyx_tuple__199 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_axis, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_mask_info, __pyx_n_s_new_values); if (unlikely(!__pyx_tuple__199)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__199);
      __Pyx_GIVEREF(__pyx_tuple__199);
      __pyx_codeobj__200 = (PyObject*)__Pyx_PyCode_New(7, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__199, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_axis, 245, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__200)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":245
     *         return _merge_blocks([self, other], self.ref_items)
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_45reindex_axis, 0, __pyx_n_s_Block_reindex_axis, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__200)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__201);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_axis, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__201 = PyTuple_Pack(5, ((PyObject *)Py_None), ((PyObject *)__pyx_int_1), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__201)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__201);
      __Pyx_GIVEREF(__pyx_tuple__201);

     246:                      limit=None, mask_info=None):

        /* "pandas/internals.pyx":246
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,
     *                      limit=None, mask_info=None):             # <<<<<<<<<<<<<<
     *         """
     *         Reindex using pre-computed indexer information
     */
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_axis", 0, 2, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mask_info);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_axis") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_method = values[2];
        __pyx_v_axis = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_limit = values[5];
        __pyx_v_mask_info = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_axis", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 245; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.reindex_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_44reindex_axis(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_method, __pyx_v_axis, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_mask_info);

     247:         """

     248:         Reindex using pre-computed indexer information

     249:         """

     250:         if axis < 1:

      /* "pandas/internals.pyx":250
     *         Reindex using pre-computed indexer information
     *         """
     *         if axis < 1:             # <<<<<<<<<<<<<<
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *         if fill_value is None:
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_1, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     251:             raise AssertionError('axis must be at least 1, got %d' % axis)

        /* "pandas/internals.pyx":251
     *         """
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)             # <<<<<<<<<<<<<<
     *         if fill_value is None:
     *             fill_value = self.fill_value
     */
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_axis_must_be_at_least_1_got_d, __pyx_v_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     252:         if fill_value is None:

      /* "pandas/internals.pyx":252
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *         if fill_value is None:             # <<<<<<<<<<<<<<
     *             fill_value = self.fill_value
     *
     */
      __pyx_t_2 = (__pyx_v_fill_value == Py_None);
      __pyx_t_4 = (__pyx_t_2 != 0);
      if (__pyx_t_4) {

     253:             fill_value = self.fill_value

        /* "pandas/internals.pyx":253
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *         if fill_value is None:
     *             fill_value = self.fill_value             # <<<<<<<<<<<<<<
     *
     *         new_values = com.take_nd(self.values, indexer, axis,
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 253; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     254:

     255:         new_values = com.take_nd(self.values, indexer, axis,

      /* "pandas/internals.pyx":255
     *             fill_value = self.fill_value
     *
     *         new_values = com.take_nd(self.values, indexer, axis,             # <<<<<<<<<<<<<<
     *                                  fill_value=fill_value, mask_info=mask_info)
     *         return make_block(new_values, self.items, self.ref_items,
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_take_nd); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __Pyx_INCREF(__pyx_v_axis);
      PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_axis);
      __Pyx_GIVEREF(__pyx_v_axis);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);

      /* "pandas/internals.pyx":255
     *             fill_value = self.fill_value
     *
     *         new_values = com.take_nd(self.values, indexer, axis,             # <<<<<<<<<<<<<<
     *                                  fill_value=fill_value, mask_info=mask_info)
     *         return make_block(new_values, self.items, self.ref_items,
     */
      __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_new_values = __pyx_t_6;
      __pyx_t_6 = 0;

     256:                                  fill_value=fill_value, mask_info=mask_info)

      /* "pandas/internals.pyx":256
     *
     *         new_values = com.take_nd(self.values, indexer, axis,
     *                                  fill_value=fill_value, mask_info=mask_info)             # <<<<<<<<<<<<<<
     *         return make_block(new_values, self.items, self.ref_items,
     *                           ndim=self.ndim, fastpath=True,
     */
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_mask_info, __pyx_v_mask_info) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     257:         return make_block(new_values, self.items, self.ref_items,

      /* "pandas/internals.pyx":257
     *         new_values = com.take_nd(self.values, indexer, axis,
     *                                  fill_value=fill_value, mask_info=mask_info)
     *         return make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                           ndim=self.ndim, fastpath=True,
     *                           placement=self._ref_locs)
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_1 = 0;
      __pyx_t_5 = 0;
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);

      /* "pandas/internals.pyx":257
     *         new_values = com.take_nd(self.values, indexer, axis,
     *                                  fill_value=fill_value, mask_info=mask_info)
     *         return make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                           ndim=self.ndim, fastpath=True,
     *                           placement=self._ref_locs)
     */
      __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     258:                           ndim=self.ndim, fastpath=True,

      /* "pandas/internals.pyx":258
     *                                  fill_value=fill_value, mask_info=mask_info)
     *         return make_block(new_values, self.items, self.ref_items,
     *                           ndim=self.ndim, fastpath=True,             # <<<<<<<<<<<<<<
     *                           placement=self._ref_locs)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 258; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_ndim, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     259:                           placement=self._ref_locs)

      /* "pandas/internals.pyx":259
     *         return make_block(new_values, self.items, self.ref_items,
     *                           ndim=self.ndim, fastpath=True,
     *                           placement=self._ref_locs)             # <<<<<<<<<<<<<<
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 259; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_placement, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     260:

     261:     def reindex_items_from(self, new_ref_items, indexer=None, method=None,

    /* "pandas/internals.pyx":261
     *                           placement=self._ref_locs)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_47reindex_items_from(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_46reindex_items_from[] = "\n        Reindex to only those items contained in the input set of items\n\n        E.g. if you have ['a', 'b'], and the input items is ['b', 'c', 'd'],\n        then the resulting items will be ['b']\n\n        Returns\n        -------\n        reindexed : Block\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_47reindex_items_from = {__Pyx_NAMESTR("reindex_items_from"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_47reindex_items_from, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_46reindex_items_from)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_47reindex_items_from(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_ref_items = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_items_from (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_ref_items,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_copy,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":261
     *                           placement=self._ref_locs)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_46reindex_items_from(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_ref_items, PyObject *__pyx_v_indexer, PyObject *__pyx_v_method, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_limit, PyObject *__pyx_v_copy) {
      PyObject *__pyx_v_needs_fill = NULL;
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_masked_idx = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_items_from", 0);
      __Pyx_INCREF(__pyx_v_new_ref_items);
      __Pyx_INCREF(__pyx_v_indexer);
      __Pyx_INCREF(__pyx_v_fill_value);

      /* "pandas/internals.pyx":261
     *                           placement=self._ref_locs)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.reindex_items_from", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_needs_fill);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_masked_idx);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_new_ref_items);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":261
     *                           placement=self._ref_locs)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */
      __pyx_tuple__202 = PyTuple_Pack(12, __pyx_n_s_self, __pyx_n_s_new_ref_items, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_copy, __pyx_n_s_needs_fill, __pyx_n_s_new_items, __pyx_n_s_new_values, __pyx_n_s_masked_idx, __pyx_n_s_block); if (unlikely(!__pyx_tuple__202)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__202);
      __Pyx_GIVEREF(__pyx_tuple__202);
      __pyx_codeobj__203 = (PyObject*)__Pyx_PyCode_New(7, 0, 12, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__202, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_items_from, 261, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__203)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":261
     *                           placement=self._ref_locs)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_47reindex_items_from, 0, __pyx_n_s_Block_reindex_items_from, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__203)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__204);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_items_from, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__204 = PyTuple_Pack(5, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__204)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__204);
      __Pyx_GIVEREF(__pyx_tuple__204);

     262:                            fill_value=None, limit=None, copy=True):

        /* "pandas/internals.pyx":262
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,
     *                            fill_value=None, limit=None, copy=True):             # <<<<<<<<<<<<<<
     *         """
     *         Reindex to only those items contained in the input set of items
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_items_from", 0, 2, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_items_from") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_ref_items = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_method = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_limit = values[5];
        __pyx_v_copy = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_items_from", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 261; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.reindex_items_from", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_46reindex_items_from(__pyx_self, __pyx_v_self, __pyx_v_new_ref_items, __pyx_v_indexer, __pyx_v_method, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_copy);

     263:         """

     264:         Reindex to only those items contained in the input set of items

     265:

     266:         E.g. if you have ['a', 'b'], and the input items is ['b', 'c', 'd'],

     267:         then the resulting items will be ['b']

     268:

     269:         Returns

     270:         -------

     271:         reindexed : Block

     272:         """

     273:         if indexer is None:

      /* "pandas/internals.pyx":273
     *         reindexed : Block
     *         """
     *         if indexer is None:             # <<<<<<<<<<<<<<
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,
     *                                                         limit=limit)
     */
      __pyx_t_1 = (__pyx_v_indexer == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     274:             new_ref_items, indexer = self.items.reindex(new_ref_items,

        /* "pandas/internals.pyx":274
     *         """
     *         if indexer is None:
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,             # <<<<<<<<<<<<<<
     *                                                         limit=limit)
     *
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reindex); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_new_ref_items);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_ref_items);
        __Pyx_GIVEREF(__pyx_v_new_ref_items);
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

        /* "pandas/internals.pyx":274
     *         """
     *         if indexer is None:
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,             # <<<<<<<<<<<<<<
     *                                                         limit=limit)
     *
     */
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
          PyObject* sequence = __pyx_t_6;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_5 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_3);
          #else
          __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          #endif
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_4 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext;
          index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_4); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_5);
          index = 1; __pyx_t_3 = __pyx_t_7(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L4_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_7 = NULL;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L5_unpacking_done;
          __pyx_L4_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_7 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L5_unpacking_done:;
        }
        __Pyx_DECREF_SET(__pyx_v_new_ref_items, __pyx_t_5);
        __pyx_t_5 = 0;
        __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     275:                                                         limit=limit)

        /* "pandas/internals.pyx":275
     *         if indexer is None:
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,
     *                                                         limit=limit)             # <<<<<<<<<<<<<<
     *
     *         needs_fill = method is not None and limit is None
     */
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     276:

     277:         needs_fill = method is not None and limit is None

      /* "pandas/internals.pyx":277
     *                                                         limit=limit)
     *
     *         needs_fill = method is not None and limit is None             # <<<<<<<<<<<<<<
     *         if fill_value is None:
     *             fill_value = self.fill_value
     */
      __pyx_t_2 = (__pyx_v_method != Py_None);
      if (__pyx_t_2) {
        __pyx_t_1 = (__pyx_v_limit == Py_None);
        __pyx_t_8 = __pyx_t_1;
      } else {
        __pyx_t_8 = __pyx_t_2;
      }
      __pyx_t_6 = __Pyx_PyBool_FromLong(__pyx_t_8); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_v_needs_fill = __pyx_t_6;
      __pyx_t_6 = 0;

     278:         if fill_value is None:

      /* "pandas/internals.pyx":278
     *
     *         needs_fill = method is not None and limit is None
     *         if fill_value is None:             # <<<<<<<<<<<<<<
     *             fill_value = self.fill_value
     *
     */
      __pyx_t_8 = (__pyx_v_fill_value == Py_None);
      __pyx_t_2 = (__pyx_t_8 != 0);
      if (__pyx_t_2) {

     279:             fill_value = self.fill_value

        /* "pandas/internals.pyx":279
     *         needs_fill = method is not None and limit is None
     *         if fill_value is None:
     *             fill_value = self.fill_value             # <<<<<<<<<<<<<<
     *
     *         new_items = new_ref_items
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_6);
        __pyx_t_6 = 0;
        goto __pyx_L6;
      }
      __pyx_L6:;

     280:

     281:         new_items = new_ref_items

      /* "pandas/internals.pyx":281
     *             fill_value = self.fill_value
     *
     *         new_items = new_ref_items             # <<<<<<<<<<<<<<
     *         if indexer is None:
     *             new_values = self.values.copy() if copy else self.values
     */
      __Pyx_INCREF(__pyx_v_new_ref_items);
      __pyx_v_new_items = __pyx_v_new_ref_items;

     282:         if indexer is None:

      /* "pandas/internals.pyx":282
     *
     *         new_items = new_ref_items
     *         if indexer is None:             # <<<<<<<<<<<<<<
     *             new_values = self.values.copy() if copy else self.values
     *
     */
      __pyx_t_2 = (__pyx_v_indexer == Py_None);
      __pyx_t_8 = (__pyx_t_2 != 0);
      if (__pyx_t_8) {

     283:             new_values = self.values.copy() if copy else self.values

        /* "pandas/internals.pyx":283
     *         new_items = new_ref_items
     *         if indexer is None:
     *             new_values = self.values.copy() if copy else self.values             # <<<<<<<<<<<<<<
     *
     *         else:
     */
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_8) {
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_copy); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_6 = __pyx_t_3;
          __pyx_t_3 = 0;
        } else {
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = __pyx_t_3;
          __pyx_t_3 = 0;
        }
        __pyx_v_new_values = __pyx_t_6;
        __pyx_t_6 = 0;
        goto __pyx_L7;
      }
      /*else*/ {

     284:

     285:         else:

     286:

     287:             # single block reindex

     288:             if self.ndim == 1:

        /* "pandas/internals.pyx":288
     *
     *             # single block reindex
     *             if self.ndim == 1:             # <<<<<<<<<<<<<<
     *                 new_values = com.take_1d(self.values, indexer,
     *                                          fill_value=fill_value)
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_3 = PyObject_RichCompare(__pyx_t_6, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_8) {

     289:                 new_values = com.take_1d(self.values, indexer,

          /* "pandas/internals.pyx":289
     *             # single block reindex
     *             if self.ndim == 1:
     *                 new_values = com.take_1d(self.values, indexer,             # <<<<<<<<<<<<<<
     *                                          fill_value=fill_value)
     *             else:
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_take_1d); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_indexer);
          PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_indexer);
          __Pyx_GIVEREF(__pyx_v_indexer);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);

          /* "pandas/internals.pyx":289
     *             # single block reindex
     *             if self.ndim == 1:
     *                 new_values = com.take_1d(self.values, indexer,             # <<<<<<<<<<<<<<
     *                                          fill_value=fill_value)
     *             else:
     */
          __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_v_new_values = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L8;
        }
        /*else*/ {

     290:                                          fill_value=fill_value)

          /* "pandas/internals.pyx":290
     *             if self.ndim == 1:
     *                 new_values = com.take_1d(self.values, indexer,
     *                                          fill_value=fill_value)             # <<<<<<<<<<<<<<
     *             else:
     *
     */
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     291:             else:

     292:

     293:                 masked_idx = indexer[indexer != -1]

          /* "pandas/internals.pyx":293
     *             else:
     *
     *                 masked_idx = indexer[indexer != -1]             # <<<<<<<<<<<<<<
     *                 new_items = self.items.take(masked_idx)
     *                 new_values = com.take_nd(self.values, masked_idx, axis=0,
     */
          __pyx_t_4 = PyObject_RichCompare(__pyx_v_indexer, __pyx_int_neg_1, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_3 = PyObject_GetItem(__pyx_v_indexer, __pyx_t_4); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_v_masked_idx = __pyx_t_3;
          __pyx_t_3 = 0;

     294:                 new_items = self.items.take(masked_idx)

          /* "pandas/internals.pyx":294
     *
     *                 masked_idx = indexer[indexer != -1]
     *                 new_items = self.items.take(masked_idx)             # <<<<<<<<<<<<<<
     *                 new_values = com.take_nd(self.values, masked_idx, axis=0,
     *                                          allow_fill=False)
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_take); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_masked_idx);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_masked_idx);
          __Pyx_GIVEREF(__pyx_v_masked_idx);
          __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_new_items, __pyx_t_5);
          __pyx_t_5 = 0;

     295:                 new_values = com.take_nd(self.values, masked_idx, axis=0,

          /* "pandas/internals.pyx":295
     *                 masked_idx = indexer[indexer != -1]
     *                 new_items = self.items.take(masked_idx)
     *                 new_values = com.take_nd(self.values, masked_idx, axis=0,             # <<<<<<<<<<<<<<
     *                                          allow_fill=False)
     *         # fill if needed
     */
          __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_take_nd); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_masked_idx);
          PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_masked_idx);
          __Pyx_GIVEREF(__pyx_v_masked_idx);
          __pyx_t_5 = 0;
          __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_axis, __pyx_int_0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":295
     *                 masked_idx = indexer[indexer != -1]
     *                 new_items = self.items.take(masked_idx)
     *                 new_values = com.take_nd(self.values, masked_idx, axis=0,             # <<<<<<<<<<<<<<
     *                                          allow_fill=False)
     *         # fill if needed
     */
          __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_v_new_values = __pyx_t_6;
          __pyx_t_6 = 0;
        }
        __pyx_L8:;
      }
      __pyx_L7:;

     296:                                          allow_fill=False)

          /* "pandas/internals.pyx":296
     *                 new_items = self.items.take(masked_idx)
     *                 new_values = com.take_nd(self.values, masked_idx, axis=0,
     *                                          allow_fill=False)             # <<<<<<<<<<<<<<
     *         # fill if needed
     *         if needs_fill:
     */
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_allow_fill, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     297:         # fill if needed

     298:         if needs_fill:

      /* "pandas/internals.pyx":298
     *                                          allow_fill=False)
     *         # fill if needed
     *         if needs_fill:             # <<<<<<<<<<<<<<
     *             new_values = com.interpolate_2d(new_values, method=method,
     *                                             limit=limit, fill_value=fill_value)
     */
      __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_needs_fill); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 298; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_8) {

     299:             new_values = com.interpolate_2d(new_values, method=method,

        /* "pandas/internals.pyx":299
     *         # fill if needed
     *         if needs_fill:
     *             new_values = com.interpolate_2d(new_values, method=method,             # <<<<<<<<<<<<<<
     *                                             limit=limit, fill_value=fill_value)
     *
     */
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_interpolate_2d); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_new_values);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_new_values);
        __Pyx_GIVEREF(__pyx_v_new_values);
        __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_method, __pyx_v_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":299
     *         # fill if needed
     *         if needs_fill:
     *             new_values = com.interpolate_2d(new_values, method=method,             # <<<<<<<<<<<<<<
     *                                             limit=limit, fill_value=fill_value)
     *
     */
        __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_new_values, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L9;
      }
      __pyx_L9:;

     300:                                             limit=limit, fill_value=fill_value)

        /* "pandas/internals.pyx":300
     *         if needs_fill:
     *             new_values = com.interpolate_2d(new_values, method=method,
     *                                             limit=limit, fill_value=fill_value)             # <<<<<<<<<<<<<<
     *
     *         block = make_block(new_values, new_items, new_ref_items,
     */
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     301:

     302:         block = make_block(new_values, new_items, new_ref_items,

      /* "pandas/internals.pyx":302
     *                                             limit=limit, fill_value=fill_value)
     *
     *         block = make_block(new_values, new_items, new_ref_items,             # <<<<<<<<<<<<<<
     *                            ndim=self.ndim, fastpath=True)
     *
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      __Pyx_INCREF(__pyx_v_new_items);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_new_items);
      __Pyx_GIVEREF(__pyx_v_new_items);
      __Pyx_INCREF(__pyx_v_new_ref_items);
      PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_new_ref_items);
      __Pyx_GIVEREF(__pyx_v_new_ref_items);
      __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);

      /* "pandas/internals.pyx":302
     *                                             limit=limit, fill_value=fill_value)
     *
     *         block = make_block(new_values, new_items, new_ref_items,             # <<<<<<<<<<<<<<
     *                            ndim=self.ndim, fastpath=True)
     *
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_block = __pyx_t_5;
      __pyx_t_5 = 0;

     303:                            ndim=self.ndim, fastpath=True)

      /* "pandas/internals.pyx":303
     *
     *         block = make_block(new_values, new_items, new_ref_items,
     *                            ndim=self.ndim, fastpath=True)             # <<<<<<<<<<<<<<
     *
     *         # down cast if needed
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_ndim, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     304:

     305:         # down cast if needed

     306:         if not self.is_float and (needs_fill or notnull(fill_value)):

      /* "pandas/internals.pyx":306
     *
     *         # down cast if needed
     *         if not self.is_float and (needs_fill or notnull(fill_value)):             # <<<<<<<<<<<<<<
     *             block = block.downcast()
     *
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_float); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_2 = (!__pyx_t_8);
      if (__pyx_t_2) {
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_needs_fill); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (!__pyx_t_8) {
          __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_notnull); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_fill_value);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_fill_value);
          __Pyx_GIVEREF(__pyx_v_fill_value);
          __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_9 = __pyx_t_1;
        } else {
          __pyx_t_9 = __pyx_t_8;
        }
        __pyx_t_8 = __pyx_t_9;
      } else {
        __pyx_t_8 = __pyx_t_2;
      }
      if (__pyx_t_8) {

     307:             block = block.downcast()

        /* "pandas/internals.pyx":307
     *         # down cast if needed
     *         if not self.is_float and (needs_fill or notnull(fill_value)):
     *             block = block.downcast()             # <<<<<<<<<<<<<<
     *
     *         return block
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_downcast); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 307; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_6);
        __pyx_t_6 = 0;
        goto __pyx_L10;
      }
      __pyx_L10:;

     308:

     309:         return block

      /* "pandas/internals.pyx":309
     *             block = block.downcast()
     *
     *         return block             # <<<<<<<<<<<<<<
     *
     *     def get(self, item):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_block);
      __pyx_r = __pyx_v_block;
      goto __pyx_L0;

     310:

     311:     def get(self, item):

    /* "pandas/internals.pyx":311
     *         return block
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         loc = self.items.get_loc(item)
     *         return self.values[loc]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_49get(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_49get = {__Pyx_NAMESTR("get"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_49get, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_49get(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("get", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.get", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_48get(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_48get(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get", 0);

      /* "pandas/internals.pyx":311
     *         return block
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         loc = self.items.get_loc(item)
     *         return self.values[loc]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.Block.get", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":311
     *         return block
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         loc = self.items.get_loc(item)
     *         return self.values[loc]
     */
      __pyx_tuple__205 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_loc); if (unlikely(!__pyx_tuple__205)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__205);
      __Pyx_GIVEREF(__pyx_tuple__205);

      /* "pandas/internals.pyx":311
     *         return block
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         loc = self.items.get_loc(item)
     *         return self.values[loc]
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_49get, 0, __pyx_n_s_Block_get, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__206)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__206 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__205, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get, 311, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__206)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     312:         loc = self.items.get_loc(item)

      /* "pandas/internals.pyx":312
     *
     *     def get(self, item):
     *         loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *         return self.values[loc]
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_loc = __pyx_t_3;
      __pyx_t_3 = 0;

     313:         return self.values[loc]

      /* "pandas/internals.pyx":313
     *     def get(self, item):
     *         loc = self.items.get_loc(item)
     *         return self.values[loc]             # <<<<<<<<<<<<<<
     *
     *     def iget(self, i):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyObject_GetItem(__pyx_t_3, __pyx_v_loc); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 313; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     314:

     315:     def iget(self, i):

    /* "pandas/internals.pyx":315
     *         return self.values[loc]
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         return self.values[i]
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_51iget(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_51iget = {__Pyx_NAMESTR("iget"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_51iget, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_51iget(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_i = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("iget (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_i,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_i)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("iget", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "iget") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_i = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("iget", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.iget", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_50iget(__pyx_self, __pyx_v_self, __pyx_v_i);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_50iget(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_i) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("iget", 0);

      /* "pandas/internals.pyx":315
     *         return self.values[loc]
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         return self.values[i]
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.Block.iget", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":315
     *         return self.values[loc]
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         return self.values[i]
     *
     */
      __pyx_tuple__207 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_i); if (unlikely(!__pyx_tuple__207)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__207);
      __Pyx_GIVEREF(__pyx_tuple__207);

      /* "pandas/internals.pyx":315
     *         return self.values[loc]
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         return self.values[i]
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_51iget, 0, __pyx_n_s_Block_iget, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__208)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_iget, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__208 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__207, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_iget, 315, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__208)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     316:         return self.values[i]

      /* "pandas/internals.pyx":316
     *
     *     def iget(self, i):
     *         return self.values[i]             # <<<<<<<<<<<<<<
     *
     *     def set(self, item, value, check=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_i); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 316; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     317:

     318:     def set(self, item, value, check=False):

    /* "pandas/internals.pyx":318
     *         return self.values[i]
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_53set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_52set[] = "\n        Modify Block in-place with new item value\n\n        Returns\n        -------\n        None\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_53set = {__Pyx_NAMESTR("set"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_53set, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_52set)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_53set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_value = 0;
      CYTHON_UNUSED PyObject *__pyx_v_check = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,&__pyx_n_s_value,&__pyx_n_s_check,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
        __pyx_v_value = values[2];
        __pyx_v_check = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_52set(__pyx_self, __pyx_v_self, __pyx_v_item, __pyx_v_value, __pyx_v_check);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_52set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value, CYTHON_UNUSED PyObject *__pyx_v_check) {
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set", 0);

      /* "pandas/internals.pyx":318
     *         return self.values[i]
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.Block.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":318
     *         return self.values[i]
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */
      __pyx_tuple__209 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_value, __pyx_n_s_check, __pyx_n_s_loc); if (unlikely(!__pyx_tuple__209)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__209);
      __Pyx_GIVEREF(__pyx_tuple__209);
      __pyx_codeobj__210 = (PyObject*)__Pyx_PyCode_New(4, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__209, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set, 318, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__210)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":318
     *         return self.values[i]
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_53set, 0, __pyx_n_s_Block_set, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__210)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__211);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__211 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__211)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__211);
      __Pyx_GIVEREF(__pyx_tuple__211);

     319:         """

     320:         Modify Block in-place with new item value

     321:

     322:         Returns

     323:         -------

     324:         None

     325:         """

     326:         loc = self.items.get_loc(item)

      /* "pandas/internals.pyx":326
     *         None
     *         """
     *         loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *         self.values[loc] = value
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_loc = __pyx_t_3;
      __pyx_t_3 = 0;

     327:         self.values[loc] = value

      /* "pandas/internals.pyx":327
     *         """
     *         loc = self.items.get_loc(item)
     *         self.values[loc] = value             # <<<<<<<<<<<<<<
     *
     *     def delete(self, item):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (unlikely(PyObject_SetItem(__pyx_t_3, __pyx_v_loc, __pyx_v_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     328:

     329:     def delete(self, item):

    /* "pandas/internals.pyx":329
     *         self.values[loc] = value
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Returns
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_55delete(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_54delete[] = "\n        Returns\n        -------\n        y : Block (new object)\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_55delete = {__Pyx_NAMESTR("delete"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_55delete, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_54delete)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_55delete(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("delete (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("delete", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "delete") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("delete", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.delete", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_54delete(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_54delete(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("delete", 0);

      /* "pandas/internals.pyx":329
     *         self.values[loc] = value
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Returns
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.delete", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_5Block_58generator(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

      /* "pandas/internals.pyx":329
     *         self.values[loc] = value
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Returns
     */
      __pyx_tuple__212 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_loc, __pyx_n_s_new_items, __pyx_n_s_new_values); if (unlikely(!__pyx_tuple__212)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__212);
      __Pyx_GIVEREF(__pyx_tuple__212);

      /* "pandas/internals.pyx":329
     *         self.values[loc] = value
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Returns
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_55delete, 0, __pyx_n_s_Block_delete, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__213)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_delete, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__213 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__212, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_delete, 329, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__213)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     330:         """

     331:         Returns

     332:         -------

     333:         y : Block (new object)

     334:         """

     335:         loc = self.items.get_loc(item)

      /* "pandas/internals.pyx":335
     *         y : Block (new object)
     *         """
     *         loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *         new_items = self.items.delete(loc)
     *         new_values = np.delete(self.values, loc, 0)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_loc = __pyx_t_3;
      __pyx_t_3 = 0;

     336:         new_items = self.items.delete(loc)

      /* "pandas/internals.pyx":336
     *         """
     *         loc = self.items.get_loc(item)
     *         new_items = self.items.delete(loc)             # <<<<<<<<<<<<<<
     *         new_values = np.delete(self.values, loc, 0)
     *         return make_block(new_values, new_items, self.ref_items,
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_delete); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 336; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_new_items = __pyx_t_2;
      __pyx_t_2 = 0;

     337:         new_values = np.delete(self.values, loc, 0)

      /* "pandas/internals.pyx":337
     *         loc = self.items.get_loc(item)
     *         new_items = self.items.delete(loc)
     *         new_values = np.delete(self.values, loc, 0)             # <<<<<<<<<<<<<<
     *         return make_block(new_values, new_items, self.ref_items,
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_delete); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __Pyx_INCREF(__pyx_int_0);
      PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_int_0);
      __Pyx_GIVEREF(__pyx_int_0);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_new_values = __pyx_t_2;
      __pyx_t_2 = 0;

     338:         return make_block(new_values, new_items, self.ref_items,

      /* "pandas/internals.pyx":338
     *         new_items = self.items.delete(loc)
     *         new_values = np.delete(self.values, loc, 0)
     *         return make_block(new_values, new_items, self.ref_items,             # <<<<<<<<<<<<<<
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      __Pyx_INCREF(__pyx_v_new_items);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_new_items);
      __Pyx_GIVEREF(__pyx_v_new_items);
      PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);

      /* "pandas/internals.pyx":338
     *         new_items = self.items.delete(loc)
     *         new_values = np.delete(self.values, loc, 0)
     *         return make_block(new_values, new_items, self.ref_items,             # <<<<<<<<<<<<<<
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     *
     */
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     339:                           ndim=self.ndim, klass=self.__class__, fastpath=True)

      /* "pandas/internals.pyx":339
     *         new_values = np.delete(self.values, loc, 0)
     *         return make_block(new_values, new_items, self.ref_items,
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)             # <<<<<<<<<<<<<<
     *
     *     def split_block_at(self, item):
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ndim, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_klass, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     340:

     341:     def split_block_at(self, item):

    /* "pandas/internals.pyx":341
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Split block into zero or more blocks around columns with given label,
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_57split_block_at(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_56split_block_at[] = "\n        Split block into zero or more blocks around columns with given label,\n        for \"deleting\" a column without having to copy data by returning views\n        on the original array.\n\n        Returns\n        -------\n        generator of Block\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_57split_block_at = {__Pyx_NAMESTR("split_block_at"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_57split_block_at, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_56split_block_at)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_57split_block_at(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("split_block_at (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("split_block_at", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "split_block_at") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("split_block_at", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.split_block_at", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_56split_block_at(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_56split_block_at(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct__split_block_at *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("split_block_at", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct__split_block_at *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct__split_block_at(__pyx_ptype_6pandas_9internals___pyx_scope_struct__split_block_at, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
      __pyx_cur_scope->__pyx_v_item = __pyx_v_item;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_item);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_item);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_5Block_58generator, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.Block.split_block_at", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_5Block_58generator(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":341
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Split block into zero or more blocks around columns with given label,
     */

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_AddTraceback("split_block_at", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

      /* "pandas/internals.pyx":341
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Split block into zero or more blocks around columns with given label,
     */
      __pyx_tuple__214 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_loc, __pyx_n_s_mask, __pyx_n_s_s, __pyx_n_s_e); if (unlikely(!__pyx_tuple__214)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__214);
      __Pyx_GIVEREF(__pyx_tuple__214);

      /* "pandas/internals.pyx":341
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Split block into zero or more blocks around columns with given label,
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_57split_block_at, 0, __pyx_n_s_Block_split_block_at, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__215)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_split_block_at, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__215 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__214, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_split_block_at, 341, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__215)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":341
     *                           ndim=self.ndim, klass=self.__class__, fastpath=True)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         """
     *         Split block into zero or more blocks around columns with given label,
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct__split_block_at {
      PyObject_HEAD
      PyObject *__pyx_v_e;
      PyObject *__pyx_v_item;
      PyObject *__pyx_v_loc;
      PyObject *__pyx_v_mask;
      PyObject *__pyx_v_s;
      PyObject *__pyx_v_self;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     342:         """

     343:         Split block into zero or more blocks around columns with given label,

     344:         for "deleting" a column without having to copy data by returning views

     345:         on the original array.

     346:

     347:         Returns

     348:         -------

     349:         generator of Block

     350:         """

     351:         loc = self.items.get_loc(item)

      /* "pandas/internals.pyx":351
     *         generator of Block
     *         """
     *         loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *
     *         if type(loc) == slice or type(loc) == int:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_item);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_cur_scope->__pyx_v_loc = __pyx_t_3;
      __pyx_t_3 = 0;

     352:

     353:         if type(loc) == slice or type(loc) == int:

      /* "pandas/internals.pyx":353
     *         loc = self.items.get_loc(item)
     *
     *         if type(loc) == slice or type(loc) == int:             # <<<<<<<<<<<<<<
     *             mask = [True] * len(self)
     *             mask[loc] = False
     */
      __pyx_t_3 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_loc)), ((PyObject *)((PyObject*)(&PySlice_Type))), Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (!__pyx_t_4) {
        __pyx_t_3 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_cur_scope->__pyx_v_loc)), ((PyObject *)((PyObject*)(&PyInt_Type))), Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_4;
      }
      if (__pyx_t_6) {

     354:             mask = [True] * len(self)

        /* "pandas/internals.pyx":354
     *
     *         if type(loc) == slice or type(loc) == int:
     *             mask = [True] * len(self)             # <<<<<<<<<<<<<<
     *             mask[loc] = False
     *         else:  # already a mask, inverted
     */
        __pyx_t_7 = PyObject_Length(__pyx_cur_scope->__pyx_v_self); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyList_New(1 * ((__pyx_t_7<0) ? 0:__pyx_t_7)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        { Py_ssize_t __pyx_temp;
          for (__pyx_temp=0; __pyx_temp < __pyx_t_7; __pyx_temp++) {
            __Pyx_INCREF(Py_True);
            PyList_SET_ITEM(__pyx_t_3, __pyx_temp, Py_True);
            __Pyx_GIVEREF(Py_True);
          }
        }
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_cur_scope->__pyx_v_mask = __pyx_t_3;
        __pyx_t_3 = 0;

     355:             mask[loc] = False

        /* "pandas/internals.pyx":355
     *         if type(loc) == slice or type(loc) == int:
     *             mask = [True] * len(self)
     *             mask[loc] = False             # <<<<<<<<<<<<<<
     *         else:  # already a mask, inverted
     *             mask = -loc
     */
        if (unlikely(PyObject_SetItem(__pyx_cur_scope->__pyx_v_mask, __pyx_cur_scope->__pyx_v_loc, Py_False) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L4;
      }
      /*else*/ {

     356:         else:  # already a mask, inverted

     357:             mask = -loc

        /* "pandas/internals.pyx":357
     *             mask[loc] = False
     *         else:  # already a mask, inverted
     *             mask = -loc             # <<<<<<<<<<<<<<
     *
     *         for s, e in com.split_ranges(mask):
     */
        __pyx_t_3 = PyNumber_Negative(__pyx_cur_scope->__pyx_v_loc); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_cur_scope->__pyx_v_mask = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_L4:;

     358:

     359:         for s, e in com.split_ranges(mask):

      /* "pandas/internals.pyx":359
     *             mask = -loc
     *
     *         for s, e in com.split_ranges(mask):             # <<<<<<<<<<<<<<
     *             yield make_block(self.values[s:e],
     *                              self.items[s:e].copy(),
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_split_ranges); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_mask);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_cur_scope->__pyx_v_mask);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_mask);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_7 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_8 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_8(__pyx_t_3);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
          PyObject* sequence = __pyx_t_2;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_9 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_9);
          #else
          __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          #endif
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_10 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
          index = 0; __pyx_t_1 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_1);
          index = 1; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L7_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_9);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_11 = NULL;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L8_unpacking_done;
          __pyx_L7_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_t_11 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L8_unpacking_done:;
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_s);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_s, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_e);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_e, __pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_9);
        __pyx_t_9 = 0;

     360:             yield make_block(self.values[s:e],

        /* "pandas/internals.pyx":360
     *
     *         for s, e in com.split_ranges(mask):
     *             yield make_block(self.values[s:e],             # <<<<<<<<<<<<<<
     *                              self.items[s:e].copy(),
     *                              self.ref_items,
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_t_9, 0, 0, &__pyx_cur_scope->__pyx_v_s, &__pyx_cur_scope->__pyx_v_e, NULL, 0, 0, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

        /* "pandas/internals.pyx":360
     *
     *         for s, e in com.split_ranges(mask):
     *             yield make_block(self.values[s:e],             # <<<<<<<<<<<<<<
     *                              self.items[s:e].copy(),
     *                              self.ref_items,
     */
        __pyx_t_12 = PyTuple_New(3); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_12);
        PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_9);
        __pyx_t_1 = 0;
        __pyx_t_10 = 0;
        __pyx_t_9 = 0;
        __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);

        /* "pandas/internals.pyx":360
     *
     *         for s, e in com.split_ranges(mask):
     *             yield make_block(self.values[s:e],             # <<<<<<<<<<<<<<
     *                              self.items[s:e].copy(),
     *                              self.ref_items,
     */
        __pyx_t_10 = PyObject_Call(__pyx_t_2, __pyx_t_12, __pyx_t_9); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_r = __pyx_t_10;
        __pyx_t_10 = 0;
        __Pyx_XGIVEREF(__pyx_t_3);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_3;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_7;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_8;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L9_resume_from_yield:;
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_3);
        __pyx_t_7 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_8 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     361:                              self.items[s:e].copy(),

        /* "pandas/internals.pyx":361
     *         for s, e in com.split_ranges(mask):
     *             yield make_block(self.values[s:e],
     *                              self.items[s:e].copy(),             # <<<<<<<<<<<<<<
     *                              self.ref_items,
     *                              ndim=self.ndim,
     */
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_10 = __Pyx_PyObject_GetSlice(__pyx_t_9, 0, 0, &__pyx_cur_scope->__pyx_v_s, &__pyx_cur_scope->__pyx_v_e, NULL, 0, 0, 1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_copy); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_10 = PyObject_Call(__pyx_t_9, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 361; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

     362:                              self.ref_items,

        /* "pandas/internals.pyx":362
     *             yield make_block(self.values[s:e],
     *                              self.items[s:e].copy(),
     *                              self.ref_items,             # <<<<<<<<<<<<<<
     *                              ndim=self.ndim,
     *                              klass=self.__class__,
     */
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);

     363:                              ndim=self.ndim,

        /* "pandas/internals.pyx":363
     *                              self.items[s:e].copy(),
     *                              self.ref_items,
     *                              ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                              klass=self.__class__,
     *                              fastpath=True)
     */
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_ndim, __pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     364:                              klass=self.__class__,

        /* "pandas/internals.pyx":364
     *                              self.ref_items,
     *                              ndim=self.ndim,
     *                              klass=self.__class__,             # <<<<<<<<<<<<<<
     *                              fastpath=True)
     *
     */
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_klass, __pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     365:                              fastpath=True)

        /* "pandas/internals.pyx":365
     *                              ndim=self.ndim,
     *                              klass=self.__class__,
     *                              fastpath=True)             # <<<<<<<<<<<<<<
     *
     *     def apply(self, func, **kwargs):
     */
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     366:

     367:     def apply(self, func, **kwargs):

    /* "pandas/internals.pyx":367
     *                              fastpath=True)
     *
     *     def apply(self, func, **kwargs):             # <<<<<<<<<<<<<<
     *         """ apply the function to my values; return a block if we are not one """
     *         return self.as_block(func(self.values))
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_60apply(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_59apply[] = " apply the function to my values; return a block if we are not one ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_60apply = {__Pyx_NAMESTR("apply"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_60apply, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_59apply)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_60apply(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_func = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("apply (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_func,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_func)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("apply", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "apply") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_func = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("apply", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.Block.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_59apply(__pyx_self, __pyx_v_self, __pyx_v_func, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_59apply(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_func, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("apply", 0);

      /* "pandas/internals.pyx":367
     *                              fastpath=True)
     *
     *     def apply(self, func, **kwargs):             # <<<<<<<<<<<<<<
     *         """ apply the function to my values; return a block if we are not one """
     *         return self.as_block(func(self.values))
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.Block.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":367
     *                              fastpath=True)
     *
     *     def apply(self, func, **kwargs):             # <<<<<<<<<<<<<<
     *         """ apply the function to my values; return a block if we are not one """
     *         return self.as_block(func(self.values))
     */
      __pyx_tuple__216 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_func, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__216)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__216);
      __Pyx_GIVEREF(__pyx_tuple__216);

      /* "pandas/internals.pyx":367
     *                              fastpath=True)
     *
     *     def apply(self, func, **kwargs):             # <<<<<<<<<<<<<<
     *         """ apply the function to my values; return a block if we are not one """
     *         return self.as_block(func(self.values))
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_60apply, 0, __pyx_n_s_Block_apply, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__217)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_apply, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__217 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__216, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_apply, 367, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__217)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 367; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     368:         """ apply the function to my values; return a block if we are not one """

     369:         return self.as_block(func(self.values))

      /* "pandas/internals.pyx":369
     *     def apply(self, func, **kwargs):
     *         """ apply the function to my values; return a block if we are not one """
     *         return self.as_block(func(self.values))             # <<<<<<<<<<<<<<
     *
     *     def fillna(self, value, inplace=False, downcast=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_as_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_v_func, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     370:

     371:     def fillna(self, value, inplace=False, downcast=None):

    /* "pandas/internals.pyx":371
     *         return self.as_block(func(self.values))
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         if not self._can_hold_na:
     *             if inplace:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_62fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_62fillna = {__Pyx_NAMESTR("fillna"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_62fillna, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_62fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,&__pyx_n_s_inplace,&__pyx_n_s_downcast,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("fillna", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "fillna") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
        __pyx_v_inplace = values[2];
        __pyx_v_downcast = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("fillna", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_61fillna(__pyx_self, __pyx_v_self, __pyx_v_value, __pyx_v_inplace, __pyx_v_downcast);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_61fillna(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value, PyObject *__pyx_v_inplace, PyObject *__pyx_v_downcast) {
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":371
     *         return self.as_block(func(self.values))
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         if not self._can_hold_na:
     *             if inplace:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":371
     *         return self.as_block(func(self.values))
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         if not self._can_hold_na:
     *             if inplace:
     */
      __pyx_tuple__218 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_value, __pyx_n_s_inplace, __pyx_n_s_downcast, __pyx_n_s_mask, __pyx_n_s_blocks); if (unlikely(!__pyx_tuple__218)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__218);
      __Pyx_GIVEREF(__pyx_tuple__218);
      __pyx_codeobj__219 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__218, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fillna, 371, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__219)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":371
     *         return self.as_block(func(self.values))
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         if not self._can_hold_na:
     *             if inplace:
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_62fillna, 0, __pyx_n_s_Block_fillna, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__219)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__220);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fillna, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__220 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__220)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 371; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__220);
      __Pyx_GIVEREF(__pyx_tuple__220);

     372:         if not self._can_hold_na:

      /* "pandas/internals.pyx":372
     *
     *     def fillna(self, value, inplace=False, downcast=None):
     *         if not self._can_hold_na:             # <<<<<<<<<<<<<<
     *             if inplace:
     *                 return [self]
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_can_hold_na); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = ((!__pyx_t_2) != 0);
      if (__pyx_t_3) {

     373:             if inplace:

        /* "pandas/internals.pyx":373
     *     def fillna(self, value, inplace=False, downcast=None):
     *         if not self._can_hold_na:
     *             if inplace:             # <<<<<<<<<<<<<<
     *                 return [self]
     *             else:
     */
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 373; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_3) {

     374:                 return [self]

          /* "pandas/internals.pyx":374
     *         if not self._can_hold_na:
     *             if inplace:
     *                 return [self]             # <<<<<<<<<<<<<<
     *             else:
     *                 return [self.copy()]
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 374; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_self);
          PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_self);
          __Pyx_GIVEREF(__pyx_v_self);
          __pyx_r = __pyx_t_1;
          __pyx_t_1 = 0;
          goto __pyx_L0;
        }
        /*else*/ {

     375:             else:

     376:                 return [self.copy()]

          /* "pandas/internals.pyx":376
     *                 return [self]
     *             else:
     *                 return [self.copy()]             # <<<<<<<<<<<<<<
     *
     *         mask = com.isnull(self.values)
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_copy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_r = __pyx_t_1;
          __pyx_t_1 = 0;
          goto __pyx_L0;
        }
      }

     377:

     378:         mask = com.isnull(self.values)

      /* "pandas/internals.pyx":378
     *                 return [self.copy()]
     *
     *         mask = com.isnull(self.values)             # <<<<<<<<<<<<<<
     *         value = self._try_fill(value)
     *         blocks = self.putmask(mask, value, inplace=inplace)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_isnull); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_mask = __pyx_t_1;
      __pyx_t_1 = 0;

     379:         value = self._try_fill(value)

      /* "pandas/internals.pyx":379
     *
     *         mask = com.isnull(self.values)
     *         value = self._try_fill(value)             # <<<<<<<<<<<<<<
     *         blocks = self.putmask(mask, value, inplace=inplace)
     *         return self._maybe_downcast(blocks, downcast)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_fill); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 379; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 379; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 379; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_4);
      __pyx_t_4 = 0;

     380:         blocks = self.putmask(mask, value, inplace=inplace)

      /* "pandas/internals.pyx":380
     *         mask = com.isnull(self.values)
     *         value = self._try_fill(value)
     *         blocks = self.putmask(mask, value, inplace=inplace)             # <<<<<<<<<<<<<<
     *         return self._maybe_downcast(blocks, downcast)
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_putmask); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_mask);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_mask);
      __Pyx_GIVEREF(__pyx_v_mask);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_blocks = __pyx_t_6;
      __pyx_t_6 = 0;

     381:         return self._maybe_downcast(blocks, downcast)

      /* "pandas/internals.pyx":381
     *         value = self._try_fill(value)
     *         blocks = self.putmask(mask, value, inplace=inplace)
     *         return self._maybe_downcast(blocks, downcast)             # <<<<<<<<<<<<<<
     *
     *     def _maybe_downcast(self, blocks, downcast=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_maybe_downcast); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_blocks);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_blocks);
      __Pyx_GIVEREF(__pyx_v_blocks);
      __Pyx_INCREF(__pyx_v_downcast);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_downcast);
      __Pyx_GIVEREF(__pyx_v_downcast);
      __pyx_t_5 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     382:

     383:     def _maybe_downcast(self, blocks, downcast=None):

    /* "pandas/internals.pyx":383
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         # no need to downcast our float
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_64_maybe_downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_64_maybe_downcast = {__Pyx_NAMESTR("_maybe_downcast"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_64_maybe_downcast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_64_maybe_downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_maybe_downcast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_blocks,&__pyx_n_s_downcast,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_maybe_downcast", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_maybe_downcast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_blocks = values[1];
        __pyx_v_downcast = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_maybe_downcast", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._maybe_downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_63_maybe_downcast(__pyx_self, __pyx_v_self, __pyx_v_blocks, __pyx_v_downcast);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_63_maybe_downcast(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_blocks, PyObject *__pyx_v_downcast) {
      PyObject *__pyx_v_result_blocks = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_maybe_downcast", 0);

      /* "pandas/internals.pyx":383
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         # no need to downcast our float
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.Block._maybe_downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result_blocks);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":383
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         # no need to downcast our float
     */
      __pyx_tuple__221 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_blocks, __pyx_n_s_downcast, __pyx_n_s_result_blocks, __pyx_n_s_b); if (unlikely(!__pyx_tuple__221)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__221);
      __Pyx_GIVEREF(__pyx_tuple__221);
      __pyx_codeobj__222 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__221, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_maybe_downcast, 383, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__222)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":383
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         # no need to downcast our float
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_64_maybe_downcast, 0, __pyx_n_s_Block__maybe_downcast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__222)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__223);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_maybe_downcast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__223 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__223)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__223);
      __Pyx_GIVEREF(__pyx_tuple__223);

     384:

     385:         # no need to downcast our float

     386:         # unless indicated

     387:         if downcast is None and self.is_float:

      /* "pandas/internals.pyx":387
     *         # no need to downcast our float
     *         # unless indicated
     *         if downcast is None and self.is_float:             # <<<<<<<<<<<<<<
     *             return blocks
     *         elif downcast is None and (self.is_timedelta or self.is_datetime):
     */
      __pyx_t_1 = (__pyx_v_downcast == Py_None);
      if (__pyx_t_1) {
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_float); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_4 = __pyx_t_3;
      } else {
        __pyx_t_4 = __pyx_t_1;
      }
      if (__pyx_t_4) {

     388:             return blocks

        /* "pandas/internals.pyx":388
     *         # unless indicated
     *         if downcast is None and self.is_float:
     *             return blocks             # <<<<<<<<<<<<<<
     *         elif downcast is None and (self.is_timedelta or self.is_datetime):
     *             return blocks
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_blocks);
        __pyx_r = __pyx_v_blocks;
        goto __pyx_L0;
      }

     389:         elif downcast is None and (self.is_timedelta or self.is_datetime):

      /* "pandas/internals.pyx":389
     *         if downcast is None and self.is_float:
     *             return blocks
     *         elif downcast is None and (self.is_timedelta or self.is_datetime):             # <<<<<<<<<<<<<<
     *             return blocks
     *
     */
      __pyx_t_4 = (__pyx_v_downcast == Py_None);
      if (__pyx_t_4) {
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_timedelta); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (!__pyx_t_1) {
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_datetime); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 389; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_5 = __pyx_t_3;
        } else {
          __pyx_t_5 = __pyx_t_1;
        }
        __pyx_t_1 = __pyx_t_5;
      } else {
        __pyx_t_1 = __pyx_t_4;
      }
      if (__pyx_t_1) {

     390:             return blocks

        /* "pandas/internals.pyx":390
     *             return blocks
     *         elif downcast is None and (self.is_timedelta or self.is_datetime):
     *             return blocks             # <<<<<<<<<<<<<<
     *
     *         result_blocks = []
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_blocks);
        __pyx_r = __pyx_v_blocks;
        goto __pyx_L0;
      }

     391:

     392:         result_blocks = []

      /* "pandas/internals.pyx":392
     *             return blocks
     *
     *         result_blocks = []             # <<<<<<<<<<<<<<
     *         for b in blocks:
     *             result_blocks.extend(b.downcast(downcast))
     */
      __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 392; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_result_blocks = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     393:         for b in blocks:

      /* "pandas/internals.pyx":393
     *
     *         result_blocks = []
     *         for b in blocks:             # <<<<<<<<<<<<<<
     *             result_blocks.extend(b.downcast(downcast))
     *
     */
      if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
        __pyx_t_2 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_2); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_8 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_8); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_8 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_8); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_8 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_8 = __pyx_t_7(__pyx_t_2);
          if (unlikely(!__pyx_t_8)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 393; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_8);
        }
        __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_8);
        __pyx_t_8 = 0;

     394:             result_blocks.extend(b.downcast(downcast))

        /* "pandas/internals.pyx":394
     *         result_blocks = []
     *         for b in blocks:
     *             result_blocks.extend(b.downcast(downcast))             # <<<<<<<<<<<<<<
     *
     *         return result_blocks
     */
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_downcast); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_INCREF(__pyx_v_downcast);
        PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_downcast);
        __Pyx_GIVEREF(__pyx_v_downcast);
        __pyx_t_10 = PyObject_Call(__pyx_t_8, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_11 = __Pyx_PyList_Extend(__pyx_v_result_blocks, __pyx_t_10); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     395:

     396:         return result_blocks

      /* "pandas/internals.pyx":396
     *             result_blocks.extend(b.downcast(downcast))
     *
     *         return result_blocks             # <<<<<<<<<<<<<<
     *
     *     def downcast(self, dtypes=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result_blocks);
      __pyx_r = __pyx_v_result_blocks;
      goto __pyx_L0;

     397:

     398:     def downcast(self, dtypes=None):

    /* "pandas/internals.pyx":398
     *         return result_blocks
     *
     *     def downcast(self, dtypes=None):             # <<<<<<<<<<<<<<
     *         """ try to downcast each item to the dict of dtypes if present """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_66downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_65downcast[] = " try to downcast each item to the dict of dtypes if present ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_66downcast = {__Pyx_NAMESTR("downcast"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_66downcast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_65downcast)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_66downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_dtypes = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("downcast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_dtypes,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtypes);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "downcast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_dtypes = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("downcast", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_65downcast(__pyx_self, __pyx_v_self, __pyx_v_dtypes);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_65downcast(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_dtypes) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_nv = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_dtype = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("downcast", 0);
      __Pyx_INCREF(__pyx_v_dtypes);

      /* "pandas/internals.pyx":398
     *         return result_blocks
     *
     *     def downcast(self, dtypes=None):             # <<<<<<<<<<<<<<
     *         """ try to downcast each item to the dict of dtypes if present """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.Block.downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_nv);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_dtypes);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":398
     *         return result_blocks
     *
     *     def downcast(self, dtypes=None):             # <<<<<<<<<<<<<<
     *         """ try to downcast each item to the dict of dtypes if present """
     *
     */
      __pyx_tuple__224 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_dtypes, __pyx_n_s_values, __pyx_n_s_nv, __pyx_n_s_blocks, __pyx_n_s_i, __pyx_n_s_item, __pyx_n_s_dtype); if (unlikely(!__pyx_tuple__224)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__224);
      __Pyx_GIVEREF(__pyx_tuple__224);
      __pyx_codeobj__225 = (PyObject*)__Pyx_PyCode_New(2, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__224, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_downcast, 398, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__225)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":398
     *         return result_blocks
     *
     *     def downcast(self, dtypes=None):             # <<<<<<<<<<<<<<
     *         """ try to downcast each item to the dict of dtypes if present """
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_66downcast, 0, __pyx_n_s_Block_downcast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__225)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__226);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_downcast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__226 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__226)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__226);
      __Pyx_GIVEREF(__pyx_tuple__226);

     399:         """ try to downcast each item to the dict of dtypes if present """

     400:

     401:         # turn it off completely

     402:         if dtypes is False:

      /* "pandas/internals.pyx":402
     *
     *         # turn it off completely
     *         if dtypes is False:             # <<<<<<<<<<<<<<
     *             return [self]
     *
     */
      __pyx_t_1 = (__pyx_v_dtypes == Py_False);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     403:             return [self]

        /* "pandas/internals.pyx":403
     *         # turn it off completely
     *         if dtypes is False:
     *             return [self]             # <<<<<<<<<<<<<<
     *
     *         values = self.values
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_self);
        PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_self);
        __Pyx_GIVEREF(__pyx_v_self);
        __pyx_r = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L0;
      }

     404:

     405:         values = self.values

      /* "pandas/internals.pyx":405
     *             return [self]
     *
     *         values = self.values             # <<<<<<<<<<<<<<
     *
     *         # single block handling
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_v_values = __pyx_t_3;
      __pyx_t_3 = 0;

     406:

     407:         # single block handling

     408:         if self._is_single_block:

      /* "pandas/internals.pyx":408
     *
     *         # single block handling
     *         if self._is_single_block:             # <<<<<<<<<<<<<<
     *
     *             # try to cast all non-floats here
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_single_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_2) {

     409:

     410:             # try to cast all non-floats here

     411:             if dtypes is None:

        /* "pandas/internals.pyx":411
     *
     *             # try to cast all non-floats here
     *             if dtypes is None:             # <<<<<<<<<<<<<<
     *                 dtypes = 'infer'
     *
     */
        __pyx_t_2 = (__pyx_v_dtypes == Py_None);
        __pyx_t_1 = (__pyx_t_2 != 0);
        if (__pyx_t_1) {

     412:                 dtypes = 'infer'

          /* "pandas/internals.pyx":412
     *             # try to cast all non-floats here
     *             if dtypes is None:
     *                 dtypes = 'infer'             # <<<<<<<<<<<<<<
     *
     *             nv = _possibly_downcast_to_dtype(values, dtypes)
     */
          __Pyx_INCREF(__pyx_n_s_infer);
          __Pyx_DECREF_SET(__pyx_v_dtypes, __pyx_n_s_infer);
          goto __pyx_L5;
        }
        __pyx_L5:;

     413:

     414:             nv = _possibly_downcast_to_dtype(values, dtypes)

        /* "pandas/internals.pyx":414
     *                 dtypes = 'infer'
     *
     *             nv = _possibly_downcast_to_dtype(values, dtypes)             # <<<<<<<<<<<<<<
     *             return [make_block(nv, self.items, self.ref_items, ndim=self.ndim,
     *                                fastpath=True)]
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_possibly_downcast_to_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        __Pyx_INCREF(__pyx_v_dtypes);
        PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_dtypes);
        __Pyx_GIVEREF(__pyx_v_dtypes);
        __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_nv = __pyx_t_5;
        __pyx_t_5 = 0;

     415:             return [make_block(nv, self.items, self.ref_items, ndim=self.ndim,

        /* "pandas/internals.pyx":415
     *
     *             nv = _possibly_downcast_to_dtype(values, dtypes)
     *             return [make_block(nv, self.items, self.ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                                fastpath=True)]
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_nv);
        __Pyx_GIVEREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_4 = 0;
        __pyx_t_3 = 0;
        __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_ndim, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

        /* "pandas/internals.pyx":415
     *
     *             nv = _possibly_downcast_to_dtype(values, dtypes)
     *             return [make_block(nv, self.items, self.ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                                fastpath=True)]
     *
     */
        __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_r = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L0;
      }

     416:                                fastpath=True)]

        /* "pandas/internals.pyx":416
     *             nv = _possibly_downcast_to_dtype(values, dtypes)
     *             return [make_block(nv, self.items, self.ref_items, ndim=self.ndim,
     *                                fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *         # ndim > 1
     */
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     417:

     418:         # ndim > 1

     419:         if dtypes is None:

      /* "pandas/internals.pyx":419
     *
     *         # ndim > 1
     *         if dtypes is None:             # <<<<<<<<<<<<<<
     *             return [self]
     *
     */
      __pyx_t_1 = (__pyx_v_dtypes == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     420:             return [self]

        /* "pandas/internals.pyx":420
     *         # ndim > 1
     *         if dtypes is None:
     *             return [self]             # <<<<<<<<<<<<<<
     *
     *         if not (dtypes == 'infer' or isinstance(dtypes, dict)):
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_self);
        PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_self);
        __Pyx_GIVEREF(__pyx_v_self);
        __pyx_r = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L0;
      }

     421:

     422:         if not (dtypes == 'infer' or isinstance(dtypes, dict)):

      /* "pandas/internals.pyx":422
     *             return [self]
     *
     *         if not (dtypes == 'infer' or isinstance(dtypes, dict)):             # <<<<<<<<<<<<<<
     *             raise ValueError("downcast must have a dictionary or 'infer' as "
     *                              "its argument")
     */
      __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_dtypes, __pyx_n_s_infer, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_2) {
        __pyx_t_1 = PyDict_Check(__pyx_v_dtypes);
        __pyx_t_7 = __pyx_t_1;
      } else {
        __pyx_t_7 = __pyx_t_2;
      }
      __pyx_t_2 = ((!__pyx_t_7) != 0);
      if (__pyx_t_2) {

     423:             raise ValueError("downcast must have a dictionary or 'infer' as "

        /* "pandas/internals.pyx":423
     *
     *         if not (dtypes == 'infer' or isinstance(dtypes, dict)):
     *             raise ValueError("downcast must have a dictionary or 'infer' as "             # <<<<<<<<<<<<<<
     *                              "its argument")
     *
     */
        __pyx_t_3 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_Raise(__pyx_t_3, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":423
     *
     *         if not (dtypes == 'infer' or isinstance(dtypes, dict)):
     *             raise ValueError("downcast must have a dictionary or 'infer' as "             # <<<<<<<<<<<<<<
     *                              "its argument")
     *
     */
      __pyx_tuple__5 = PyTuple_Pack(1, __pyx_kp_s_downcast_must_have_a_dictionary); if (unlikely(!__pyx_tuple__5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__5);
      __Pyx_GIVEREF(__pyx_tuple__5);

     424:                              "its argument")

     425:

     426:         # item-by-item

     427:         # this is expensive as it splits the blocks items-by-item

     428:         blocks = []

      /* "pandas/internals.pyx":428
     *         # item-by-item
     *         # this is expensive as it splits the blocks items-by-item
     *         blocks = []             # <<<<<<<<<<<<<<
     *         for i, item in enumerate(self.items):
     *
     */
      __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_v_blocks = ((PyObject*)__pyx_t_3);
      __pyx_t_3 = 0;

     429:         for i, item in enumerate(self.items):

      /* "pandas/internals.pyx":429
     *         # this is expensive as it splits the blocks items-by-item
     *         blocks = []
     *         for i, item in enumerate(self.items):             # <<<<<<<<<<<<<<
     *
     *             if dtypes == 'infer':
     */
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_3 = __pyx_int_0;
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_6 = __pyx_t_4; __Pyx_INCREF(__pyx_t_6); __pyx_t_8 = 0;
        __pyx_t_9 = NULL;
      } else {
        __pyx_t_8 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_9 = Py_TYPE(__pyx_t_6)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_6)) {
          if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_6)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_8); __Pyx_INCREF(__pyx_t_4); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_6, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_6)) {
          if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_6)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_8); __Pyx_INCREF(__pyx_t_4); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_6, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_9(__pyx_t_6);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_4);
        __pyx_t_4 = 0;
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
        __pyx_t_4 = PyNumber_Add(__pyx_t_3, __pyx_int_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3);
        __pyx_t_3 = __pyx_t_4;
        __pyx_t_4 = 0;

     430:

     431:             if dtypes == 'infer':

        /* "pandas/internals.pyx":431
     *         for i, item in enumerate(self.items):
     *
     *             if dtypes == 'infer':             # <<<<<<<<<<<<<<
     *                 dtype = 'infer'
     *             else:
     */
        __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_dtypes, __pyx_n_s_infer, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 431; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_2) {

     432:                 dtype = 'infer'

          /* "pandas/internals.pyx":432
     *
     *             if dtypes == 'infer':
     *                 dtype = 'infer'             # <<<<<<<<<<<<<<
     *             else:
     *                 dtype = dtypes.get(item, self._downcast_dtype)
     */
          __Pyx_INCREF(__pyx_n_s_infer);
          __Pyx_XDECREF_SET(__pyx_v_dtype, __pyx_n_s_infer);
          goto __pyx_L10;
        }
        /*else*/ {

     433:             else:

     434:                 dtype = dtypes.get(item, self._downcast_dtype)

          /* "pandas/internals.pyx":434
     *                 dtype = 'infer'
     *             else:
     *                 dtype = dtypes.get(item, self._downcast_dtype)             # <<<<<<<<<<<<<<
     *
     *             if dtype is None:
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_dtypes, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_downcast_dtype); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_t_5 = 0;
          __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF_SET(__pyx_v_dtype, __pyx_t_5);
          __pyx_t_5 = 0;
        }
        __pyx_L10:;

     435:

     436:             if dtype is None:

        /* "pandas/internals.pyx":436
     *                 dtype = dtypes.get(item, self._downcast_dtype)
     *
     *             if dtype is None:             # <<<<<<<<<<<<<<
     *                 nv = _block_shape(values[i], ndim=self.ndim)
     *             else:
     */
        __pyx_t_2 = (__pyx_v_dtype == Py_None);
        __pyx_t_7 = (__pyx_t_2 != 0);
        if (__pyx_t_7) {

     437:                 nv = _block_shape(values[i], ndim=self.ndim)

          /* "pandas/internals.pyx":437
     *
     *             if dtype is None:
     *                 nv = _block_shape(values[i], ndim=self.ndim)             # <<<<<<<<<<<<<<
     *             else:
     *                 nv = _possibly_downcast_to_dtype(values[i], dtype)
     */
          __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_10 = PyObject_GetItem(__pyx_v_values, __pyx_v_i); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __pyx_t_10 = 0;
          __pyx_t_10 = PyDict_New(); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_ndim, __pyx_t_11) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_11 = PyObject_Call(__pyx_t_5, __pyx_t_4, __pyx_t_10); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF_SET(__pyx_v_nv, __pyx_t_11);
          __pyx_t_11 = 0;
          goto __pyx_L11;
        }
        /*else*/ {

     438:             else:

     439:                 nv = _possibly_downcast_to_dtype(values[i], dtype)

          /* "pandas/internals.pyx":439
     *                 nv = _block_shape(values[i], ndim=self.ndim)
     *             else:
     *                 nv = _possibly_downcast_to_dtype(values[i], dtype)             # <<<<<<<<<<<<<<
     *                 nv = _block_shape(nv, ndim=self.ndim)
     *
     */
          __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_possibly_downcast_to_dtype); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 439; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_10 = PyObject_GetItem(__pyx_v_values, __pyx_v_i); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 439; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 439; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __Pyx_INCREF(__pyx_v_dtype);
          PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_dtype);
          __Pyx_GIVEREF(__pyx_v_dtype);
          __pyx_t_10 = 0;
          __pyx_t_10 = PyObject_Call(__pyx_t_11, __pyx_t_4, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 439; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_XDECREF_SET(__pyx_v_nv, __pyx_t_10);
          __pyx_t_10 = 0;

     440:                 nv = _block_shape(nv, ndim=self.ndim)

          /* "pandas/internals.pyx":440
     *             else:
     *                 nv = _possibly_downcast_to_dtype(values[i], dtype)
     *                 nv = _block_shape(nv, ndim=self.ndim)             # <<<<<<<<<<<<<<
     *
     *             blocks.append(make_block(nv, Index([item]), self.ref_items,
     */
          __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_nv);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_nv);
          __Pyx_GIVEREF(__pyx_v_nv);
          __pyx_t_11 = PyDict_New(); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_ndim, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = PyObject_Call(__pyx_t_10, __pyx_t_4, __pyx_t_11); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF_SET(__pyx_v_nv, __pyx_t_5);
          __pyx_t_5 = 0;
        }
        __pyx_L11:;

     441:

     442:             blocks.append(make_block(nv, Index([item]), self.ref_items,

        /* "pandas/internals.pyx":442
     *                 nv = _block_shape(nv, ndim=self.ndim)
     *
     *             blocks.append(make_block(nv, Index([item]), self.ref_items,             # <<<<<<<<<<<<<<
     *                                      ndim=self.ndim, fastpath=True))
     *
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_Index); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_item);
        PyList_SET_ITEM(__pyx_t_4, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_11, __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_INCREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_nv);
        __Pyx_GIVEREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_11, 2, __pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_10);
        __pyx_t_4 = 0;
        __pyx_t_10 = 0;
        __pyx_t_10 = PyDict_New(); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);

        /* "pandas/internals.pyx":442
     *                 nv = _block_shape(nv, ndim=self.ndim)
     *
     *             blocks.append(make_block(nv, Index([item]), self.ref_items,             # <<<<<<<<<<<<<<
     *                                      ndim=self.ndim, fastpath=True))
     *
     */
        __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_11, __pyx_t_10); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_12 = __Pyx_PyList_Append(__pyx_v_blocks, __pyx_t_4); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     443:                                      ndim=self.ndim, fastpath=True))

        /* "pandas/internals.pyx":443
     *
     *             blocks.append(make_block(nv, Index([item]), self.ref_items,
     *                                      ndim=self.ndim, fastpath=True))             # <<<<<<<<<<<<<<
     *
     *         return blocks
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 443; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_ndim, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 442; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     444:

     445:         return blocks

      /* "pandas/internals.pyx":445
     *                                      ndim=self.ndim, fastpath=True))
     *
     *         return blocks             # <<<<<<<<<<<<<<
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_blocks);
      __pyx_r = __pyx_v_blocks;
      goto __pyx_L0;

     446:

     447:     def astype(self, dtype, copy=False, raise_on_error=True, values=None):

    /* "pandas/internals.pyx":447
     *         return blocks
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):             # <<<<<<<<<<<<<<
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     *                             values=values)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_68astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_68astype = {__Pyx_NAMESTR("astype"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_68astype, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_68astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_raise_on_error = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("astype (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_dtype,&__pyx_n_s_copy,&__pyx_n_s_raise_on_error,&__pyx_n_s_values,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("astype", 0, 2, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_raise_on_error);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "astype") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_dtype = values[1];
        __pyx_v_copy = values[2];
        __pyx_v_raise_on_error = values[3];
        __pyx_v_values = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("astype", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_67astype(__pyx_self, __pyx_v_self, __pyx_v_dtype, __pyx_v_copy, __pyx_v_raise_on_error, __pyx_v_values);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_67astype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_dtype, PyObject *__pyx_v_copy, PyObject *__pyx_v_raise_on_error, PyObject *__pyx_v_values) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("astype", 0);

      /* "pandas/internals.pyx":447
     *         return blocks
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):             # <<<<<<<<<<<<<<
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     *                             values=values)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":447
     *         return blocks
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):             # <<<<<<<<<<<<<<
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     *                             values=values)
     */
      __pyx_tuple__227 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_dtype, __pyx_n_s_copy, __pyx_n_s_raise_on_error, __pyx_n_s_values); if (unlikely(!__pyx_tuple__227)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__227);
      __Pyx_GIVEREF(__pyx_tuple__227);
      __pyx_codeobj__228 = (PyObject*)__Pyx_PyCode_New(5, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__227, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_astype, 447, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__228)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":447
     *         return blocks
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):             # <<<<<<<<<<<<<<
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     *                             values=values)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_68astype, 0, __pyx_n_s_Block_astype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__228)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__229);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_astype, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__229 = PyTuple_Pack(3, ((PyObject *)Py_False), ((PyObject *)Py_True), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__229)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 447; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__229);
      __Pyx_GIVEREF(__pyx_tuple__229);

     448:         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,

      /* "pandas/internals.pyx":448
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,             # <<<<<<<<<<<<<<
     *                             values=values)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_astype_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_dtype);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_dtype);
      __Pyx_GIVEREF(__pyx_v_dtype);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_raise_on_error, __pyx_v_raise_on_error) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":448
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,             # <<<<<<<<<<<<<<
     *                             values=values)
     *
     */
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     449:                             values=values)

      /* "pandas/internals.pyx":449
     *     def astype(self, dtype, copy=False, raise_on_error=True, values=None):
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     *                             values=values)             # <<<<<<<<<<<<<<
     *
     *     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,
     */
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_values, __pyx_v_values) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     450:

     451:     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,

    /* "pandas/internals.pyx":451
     *                             values=values)
     *
     *     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,             # <<<<<<<<<<<<<<
     *                 klass=None):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_70_astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_69_astype[] = "\n        Coerce to the new type (if copy=True, return a new copy)\n        raise on an except if raise == True\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_70_astype = {__Pyx_NAMESTR("_astype"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_70_astype, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_69_astype)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_70_astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_raise_on_error = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_klass = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_astype (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_dtype,&__pyx_n_s_copy,&__pyx_n_s_raise_on_error,&__pyx_n_s_values,&__pyx_n_s_klass,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":451
     *                             values=values)
     *
     *     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,             # <<<<<<<<<<<<<<
     *                 klass=None):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_69_astype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_dtype, PyObject *__pyx_v_copy, PyObject *__pyx_v_raise_on_error, PyObject *__pyx_v_values, PyObject *__pyx_v_klass) {
      PyObject *__pyx_v_newb = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_astype", 0);
      __Pyx_INCREF(__pyx_v_dtype);
      __Pyx_INCREF(__pyx_v_values);

      /* "pandas/internals.pyx":451
     *                             values=values)
     *
     *     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,             # <<<<<<<<<<<<<<
     *                 klass=None):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.Block._astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":451
     *                             values=values)
     *
     *     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,             # <<<<<<<<<<<<<<
     *                 klass=None):
     *         """
     */
      __pyx_tuple__230 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_dtype, __pyx_n_s_copy, __pyx_n_s_raise_on_error, __pyx_n_s_values, __pyx_n_s_klass, __pyx_n_s_newb); if (unlikely(!__pyx_tuple__230)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__230);
      __Pyx_GIVEREF(__pyx_tuple__230);
      __pyx_codeobj__231 = (PyObject*)__Pyx_PyCode_New(6, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__230, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_astype_2, 451, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__231)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":451
     *                             values=values)
     *
     *     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,             # <<<<<<<<<<<<<<
     *                 klass=None):
     *         """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_70_astype, 0, __pyx_n_s_Block__astype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__231)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__232);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_astype_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__232 = PyTuple_Pack(4, ((PyObject *)Py_False), ((PyObject *)Py_True), ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__232)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__232);
      __Pyx_GIVEREF(__pyx_tuple__232);

     452:                 klass=None):

        /* "pandas/internals.pyx":452
     *
     *     def _astype(self, dtype, copy=False, raise_on_error=True, values=None,
     *                 klass=None):             # <<<<<<<<<<<<<<
     *         """
     *         Coerce to the new type (if copy=True, return a new copy)
     */
        values[5] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_astype", 0, 2, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_raise_on_error);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_klass);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_astype") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_dtype = values[1];
        __pyx_v_copy = values[2];
        __pyx_v_raise_on_error = values[3];
        __pyx_v_values = values[4];
        __pyx_v_klass = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_astype", 0, 2, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 451; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_69_astype(__pyx_self, __pyx_v_self, __pyx_v_dtype, __pyx_v_copy, __pyx_v_raise_on_error, __pyx_v_values, __pyx_v_klass);

     453:         """

     454:         Coerce to the new type (if copy=True, return a new copy)

     455:         raise on an except if raise == True

     456:         """

     457:         dtype = np.dtype(dtype)

      /* "pandas/internals.pyx":457
     *         raise on an except if raise == True
     *         """
     *         dtype = np.dtype(dtype)             # <<<<<<<<<<<<<<
     *         if self.dtype == dtype:
     *             if copy:
     */
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_dtype);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_dtype);
      __Pyx_GIVEREF(__pyx_v_dtype);
      __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 457; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_dtype, __pyx_t_2);
      __pyx_t_2 = 0;

     458:         if self.dtype == dtype:

      /* "pandas/internals.pyx":458
     *         """
     *         dtype = np.dtype(dtype)
     *         if self.dtype == dtype:             # <<<<<<<<<<<<<<
     *             if copy:
     *                 return self.copy()
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_v_dtype, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_3) {

     459:             if copy:

        /* "pandas/internals.pyx":459
     *         dtype = np.dtype(dtype)
     *         if self.dtype == dtype:
     *             if copy:             # <<<<<<<<<<<<<<
     *                 return self.copy()
     *             return self
     */
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 459; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_3) {

     460:                 return self.copy()

          /* "pandas/internals.pyx":460
     *         if self.dtype == dtype:
     *             if copy:
     *                 return self.copy()             # <<<<<<<<<<<<<<
     *             return self
     *
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_copy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_r = __pyx_t_2;
          __pyx_t_2 = 0;
          goto __pyx_L0;
        }

     461:             return self

        /* "pandas/internals.pyx":461
     *             if copy:
     *                 return self.copy()
     *             return self             # <<<<<<<<<<<<<<
     *
     *         try:
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_self);
        __pyx_r = __pyx_v_self;
        goto __pyx_L0;
      }

     462:

     463:         try:

      /* "pandas/internals.pyx":463
     *             return self
     *
     *         try:             # <<<<<<<<<<<<<<
     *             # force the copy here
     *             if values is None:
     */
      {
        /*try:*/ {

     464:             # force the copy here

     465:             if values is None:

          /* "pandas/internals.pyx":465
     *         try:
     *             # force the copy here
     *             if values is None:             # <<<<<<<<<<<<<<
     *                 values = com._astype_nansafe(self.values, dtype, copy=True)
     *             newb = make_block(values, self.items, self.ref_items,
     */
          __pyx_t_3 = (__pyx_v_values == Py_None);
          __pyx_t_7 = (__pyx_t_3 != 0);
          if (__pyx_t_7) {

     466:                 values = com._astype_nansafe(self.values, dtype, copy=True)

            /* "pandas/internals.pyx":466
     *             # force the copy here
     *             if values is None:
     *                 values = com._astype_nansafe(self.values, dtype, copy=True)             # <<<<<<<<<<<<<<
     *             newb = make_block(values, self.items, self.ref_items,
     *                               ndim=self.ndim, placement=self._ref_locs,
     */
            __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_astype_nansafe); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
            __Pyx_GOTREF(__pyx_t_8);
            PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_INCREF(__pyx_v_dtype);
            PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_dtype);
            __Pyx_GIVEREF(__pyx_v_dtype);
            __pyx_t_2 = 0;
            __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
            __Pyx_GOTREF(__pyx_t_2);
            if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_copy, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
            __pyx_t_9 = PyObject_Call(__pyx_t_1, __pyx_t_8, __pyx_t_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 466; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_9);
            __pyx_t_9 = 0;
            goto __pyx_L13;
          }
          __pyx_L13:;

     467:             newb = make_block(values, self.items, self.ref_items,

          /* "pandas/internals.pyx":467
     *             if values is None:
     *                 values = com._astype_nansafe(self.values, dtype, copy=True)
     *             newb = make_block(values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                               ndim=self.ndim, placement=self._ref_locs,
     *                               fastpath=True, dtype=dtype, klass=klass)
     */
          __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
          __Pyx_GIVEREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2);
          __Pyx_GIVEREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_8);
          __pyx_t_2 = 0;
          __pyx_t_8 = 0;
          __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_8);

          /* "pandas/internals.pyx":467
     *             if values is None:
     *                 values = com._astype_nansafe(self.values, dtype, copy=True)
     *             newb = make_block(values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                               ndim=self.ndim, placement=self._ref_locs,
     *                               fastpath=True, dtype=dtype, klass=klass)
     */
          __pyx_t_2 = PyObject_Call(__pyx_t_9, __pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_v_newb = __pyx_t_2;
          __pyx_t_2 = 0;
        }
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        goto __pyx_L12_try_end;
        __pyx_L5_error:;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;

     468:                               ndim=self.ndim, placement=self._ref_locs,

          /* "pandas/internals.pyx":468
     *                 values = com._astype_nansafe(self.values, dtype, copy=True)
     *             newb = make_block(values, self.items, self.ref_items,
     *                               ndim=self.ndim, placement=self._ref_locs,             # <<<<<<<<<<<<<<
     *                               fastpath=True, dtype=dtype, klass=klass)
     *         except:
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_2);
          if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_ndim, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 468; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_2);
          if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_placement, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     469:                               fastpath=True, dtype=dtype, klass=klass)

          /* "pandas/internals.pyx":469
     *             newb = make_block(values, self.items, self.ref_items,
     *                               ndim=self.ndim, placement=self._ref_locs,
     *                               fastpath=True, dtype=dtype, klass=klass)             # <<<<<<<<<<<<<<
     *         except:
     *             if raise_on_error is True:
     */
          if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_klass, __pyx_v_klass) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 467; __pyx_clineno = __LINE__; goto __pyx_L5_error;}

     470:         except:

        /* "pandas/internals.pyx":470
     *                               ndim=self.ndim, placement=self._ref_locs,
     *                               fastpath=True, dtype=dtype, klass=klass)
     *         except:             # <<<<<<<<<<<<<<
     *             if raise_on_error is True:
     *                 raise
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.Block._astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_8, &__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 470; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_GOTREF(__pyx_t_1);

     471:             if raise_on_error is True:

          /* "pandas/internals.pyx":471
     *                               fastpath=True, dtype=dtype, klass=klass)
     *         except:
     *             if raise_on_error is True:             # <<<<<<<<<<<<<<
     *                 raise
     *             newb = self.copy() if copy else self
     */
          __pyx_t_7 = (__pyx_v_raise_on_error == Py_True);
          __pyx_t_3 = (__pyx_t_7 != 0);
          if (__pyx_t_3) {

     472:                 raise

            /* "pandas/internals.pyx":472
     *         except:
     *             if raise_on_error is True:
     *                 raise             # <<<<<<<<<<<<<<
     *             newb = self.copy() if copy else self
     *
     */
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_8);
            __Pyx_XGIVEREF(__pyx_t_1);
            __Pyx_ErrRestore(__pyx_t_2, __pyx_t_8, __pyx_t_1);
            __pyx_t_2 = 0; __pyx_t_8 = 0; __pyx_t_1 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 472; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
          }

     473:             newb = self.copy() if copy else self

          /* "pandas/internals.pyx":473
     *             if raise_on_error is True:
     *                 raise
     *             newb = self.copy() if copy else self             # <<<<<<<<<<<<<<
     *
     *         if newb.is_numeric and self.is_numeric:
     */
          __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
          if (__pyx_t_3) {
            __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_copy); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_11 = PyObject_Call(__pyx_t_10, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 473; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __pyx_t_9 = __pyx_t_11;
            __pyx_t_11 = 0;
          } else {
            __Pyx_INCREF(__pyx_v_self);
            __pyx_t_9 = __pyx_v_self;
          }
          __Pyx_XDECREF_SET(__pyx_v_newb, __pyx_t_9);
          __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L6_exception_handled;
        }
        __pyx_L7_except_error:;
        __Pyx_XGIVEREF(__pyx_t_4);
        __Pyx_XGIVEREF(__pyx_t_5);
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
        goto __pyx_L1_error;
        __pyx_L6_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_4);
        __Pyx_XGIVEREF(__pyx_t_5);
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_ExceptionReset(__pyx_t_4, __pyx_t_5, __pyx_t_6);
        __pyx_L12_try_end:;
      }

     474:

     475:         if newb.is_numeric and self.is_numeric:

      /* "pandas/internals.pyx":475
     *             newb = self.copy() if copy else self
     *
     *         if newb.is_numeric and self.is_numeric:             # <<<<<<<<<<<<<<
     *             if newb.shape != self.shape:
     *                 raise TypeError("cannot set astype for copy = [%s] for dtype "
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_newb, __pyx_n_s_is_numeric); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_3) {
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_numeric); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_12 = __pyx_t_7;
      } else {
        __pyx_t_12 = __pyx_t_3;
      }
      if (__pyx_t_12) {

     476:             if newb.shape != self.shape:

        /* "pandas/internals.pyx":476
     *
     *         if newb.is_numeric and self.is_numeric:
     *             if newb.shape != self.shape:             # <<<<<<<<<<<<<<
     *                 raise TypeError("cannot set astype for copy = [%s] for dtype "
     *                                 "(%s [%s]) with smaller itemsize that current "
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_newb, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_8, Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_12 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_12 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (__pyx_t_12) {

     477:                 raise TypeError("cannot set astype for copy = [%s] for dtype "

          /* "pandas/internals.pyx":477
     *         if newb.is_numeric and self.is_numeric:
     *             if newb.shape != self.shape:
     *                 raise TypeError("cannot set astype for copy = [%s] for dtype "             # <<<<<<<<<<<<<<
     *                                 "(%s [%s]) with smaller itemsize that current "
     *                                 "(%s [%s])" % (copy, self.dtype.name,
     */
          __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_11, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_Raise(__pyx_t_1, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 477; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        goto __pyx_L17;
      }
      __pyx_L17:;

     478:                                 "(%s [%s]) with smaller itemsize that current "

     479:                                 "(%s [%s])" % (copy, self.dtype.name,

          /* "pandas/internals.pyx":479
     *                 raise TypeError("cannot set astype for copy = [%s] for dtype "
     *                                 "(%s [%s]) with smaller itemsize that current "
     *                                 "(%s [%s])" % (copy, self.dtype.name,             # <<<<<<<<<<<<<<
     *                                                self.itemsize, newb.dtype.name,
     *                                                newb.itemsize))
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_name); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

          /* "pandas/internals.pyx":479
     *                 raise TypeError("cannot set astype for copy = [%s] for dtype "
     *                                 "(%s [%s]) with smaller itemsize that current "
     *                                 "(%s [%s])" % (copy, self.dtype.name,             # <<<<<<<<<<<<<<
     *                                                self.itemsize, newb.dtype.name,
     *                                                newb.itemsize))
     */
          __pyx_t_11 = PyTuple_New(5); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_copy);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_copy);
          __Pyx_GIVEREF(__pyx_v_copy);
          PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_8);
          PyTuple_SET_ITEM(__pyx_t_11, 2, __pyx_t_2);
          __Pyx_GIVEREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_11, 3, __pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_9);
          PyTuple_SET_ITEM(__pyx_t_11, 4, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_8 = 0;
          __pyx_t_2 = 0;
          __pyx_t_9 = 0;
          __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_cannot_set_astype_for_copy_s_for, __pyx_t_11); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;

     480:                                                self.itemsize, newb.dtype.name,

          /* "pandas/internals.pyx":480
     *                                 "(%s [%s]) with smaller itemsize that current "
     *                                 "(%s [%s])" % (copy, self.dtype.name,
     *                                                self.itemsize, newb.dtype.name,             # <<<<<<<<<<<<<<
     *                                                newb.itemsize))
     *         return [newb]
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_newb, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_name); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     481:                                                newb.itemsize))

          /* "pandas/internals.pyx":481
     *                                 "(%s [%s])" % (copy, self.dtype.name,
     *                                                self.itemsize, newb.dtype.name,
     *                                                newb.itemsize))             # <<<<<<<<<<<<<<
     *         return [newb]
     *
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_newb, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 481; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

     482:         return [newb]

      /* "pandas/internals.pyx":482
     *                                                self.itemsize, newb.dtype.name,
     *                                                newb.itemsize))
     *         return [newb]             # <<<<<<<<<<<<<<
     *
     *     def convert(self, copy=True, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_newb);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_newb);
      __Pyx_GIVEREF(__pyx_v_newb);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     483:

     484:     def convert(self, copy=True, **kwargs):

    /* "pandas/internals.pyx":484
     *         return [newb]
     *
     *     def convert(self, copy=True, **kwargs):             # <<<<<<<<<<<<<<
     *         """ attempt to coerce any object types to better types
     *             return a copy of the block (if copy = True)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_72convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_71convert[] = " attempt to coerce any object types to better types\n            return a copy of the block (if copy = True)\n            by definition we are not an ObjectBlock here!  ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_72convert = {__Pyx_NAMESTR("convert"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_72convert, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_71convert)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_72convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_copy = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_copy,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "convert") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_copy = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("convert", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.Block.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_71convert(__pyx_self, __pyx_v_self, __pyx_v_copy, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_71convert(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_copy, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert", 0);

      /* "pandas/internals.pyx":484
     *         return [newb]
     *
     *     def convert(self, copy=True, **kwargs):             # <<<<<<<<<<<<<<
     *         """ attempt to coerce any object types to better types
     *             return a copy of the block (if copy = True)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":484
     *         return [newb]
     *
     *     def convert(self, copy=True, **kwargs):             # <<<<<<<<<<<<<<
     *         """ attempt to coerce any object types to better types
     *             return a copy of the block (if copy = True)
     */
      __pyx_tuple__233 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_copy, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__233)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__233);
      __Pyx_GIVEREF(__pyx_tuple__233);
      __pyx_codeobj__234 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__233, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_convert, 484, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__234)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":484
     *         return [newb]
     *
     *     def convert(self, copy=True, **kwargs):             # <<<<<<<<<<<<<<
     *         """ attempt to coerce any object types to better types
     *             return a copy of the block (if copy = True)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_72convert, 0, __pyx_n_s_Block_convert, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__234)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__235);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_convert, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__235 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__235)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 484; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__235);
      __Pyx_GIVEREF(__pyx_tuple__235);

     485:         """ attempt to coerce any object types to better types

     486:             return a copy of the block (if copy = True)

     487:             by definition we are not an ObjectBlock here!  """

     488:

     489:         return [self.copy()] if copy else [self]

      /* "pandas/internals.pyx":489
     *             by definition we are not an ObjectBlock here!  """
     *
     *         return [self.copy()] if copy else [self]             # <<<<<<<<<<<<<<
     *
     *     def prepare_for_merge(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_copy); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      } else {
        __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_self);
        PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_self);
        __Pyx_GIVEREF(__pyx_v_self);
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     490:

     491:     def prepare_for_merge(self, **kwargs):

    /* "pandas/internals.pyx":491
     *         return [self.copy()] if copy else [self]
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ a regular block is ok to merge as is """
     *         return self
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_74prepare_for_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_73prepare_for_merge[] = " a regular block is ok to merge as is ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_74prepare_for_merge = {__Pyx_NAMESTR("prepare_for_merge"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_74prepare_for_merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_73prepare_for_merge)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_74prepare_for_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("prepare_for_merge (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "prepare_for_merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("prepare_for_merge", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.Block.prepare_for_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_73prepare_for_merge(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_73prepare_for_merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("prepare_for_merge", 0);

      /* "pandas/internals.pyx":491
     *         return [self.copy()] if copy else [self]
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ a regular block is ok to merge as is """
     *         return self
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":491
     *         return [self.copy()] if copy else [self]
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ a regular block is ok to merge as is """
     *         return self
     */
      __pyx_tuple__236 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__236)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__236);
      __Pyx_GIVEREF(__pyx_tuple__236);

      /* "pandas/internals.pyx":491
     *         return [self.copy()] if copy else [self]
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ a regular block is ok to merge as is """
     *         return self
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_74prepare_for_merge, 0, __pyx_n_s_Block_prepare_for_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__237)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_prepare_for_merge, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__237 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__236, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_prepare_for_merge, 491, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__237)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     492:         """ a regular block is ok to merge as is """

     493:         return self

      /* "pandas/internals.pyx":493
     *     def prepare_for_merge(self, **kwargs):
     *         """ a regular block is ok to merge as is """
     *         return self             # <<<<<<<<<<<<<<
     *
     *     def post_merge(self, items, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_self);
      __pyx_r = __pyx_v_self;
      goto __pyx_L0;

     494:

     495:     def post_merge(self, items, **kwargs):

    /* "pandas/internals.pyx":495
     *         return self
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         """ we are non-sparse block, try to convert to a sparse block(s) """
     *         overlap = set(items.keys()) & set(self.items)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_76post_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_75post_merge[] = " we are non-sparse block, try to convert to a sparse block(s) ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_76post_merge = {__Pyx_NAMESTR("post_merge"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_76post_merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_75post_merge)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_76post_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_items = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("post_merge (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_items,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("post_merge", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "post_merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_items = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("post_merge", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.Block.post_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_75post_merge(__pyx_self, __pyx_v_self, __pyx_v_items, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_75post_merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_items, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_overlap = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_dtypes = NULL;
      PyObject *__pyx_v_dtype = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("post_merge", 0);

      /* "pandas/internals.pyx":495
     *         return self
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         """ we are non-sparse block, try to convert to a sparse block(s) """
     *         overlap = set(items.keys()) & set(self.items)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.Block.post_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_overlap);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_dtypes);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":495
     *         return self
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         """ we are non-sparse block, try to convert to a sparse block(s) """
     *         overlap = set(items.keys()) & set(self.items)
     */
      __pyx_tuple__238 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_items, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_overlap, __pyx_n_s_new_blocks, __pyx_n_s_item, __pyx_n_s_dtypes, __pyx_n_s_dtype, __pyx_n_s_b); if (unlikely(!__pyx_tuple__238)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__238);
      __Pyx_GIVEREF(__pyx_tuple__238);

      /* "pandas/internals.pyx":495
     *         return self
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         """ we are non-sparse block, try to convert to a sparse block(s) """
     *         overlap = set(items.keys()) & set(self.items)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_76post_merge, 0, __pyx_n_s_Block_post_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__239)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_post_merge, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__239 = (PyObject*)__Pyx_PyCode_New(2, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__238, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_post_merge, 495, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__239)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     496:         """ we are non-sparse block, try to convert to a sparse block(s) """

     497:         overlap = set(items.keys()) & set(self.items)

      /* "pandas/internals.pyx":497
     *     def post_merge(self, items, **kwargs):
     *         """ we are non-sparse block, try to convert to a sparse block(s) """
     *         overlap = set(items.keys()) & set(self.items)             # <<<<<<<<<<<<<<
     *         if len(overlap):
     *             overlap = _ensure_index(overlap)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_keys); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyNumber_And(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_overlap = __pyx_t_3;
      __pyx_t_3 = 0;

     498:         if len(overlap):

      /* "pandas/internals.pyx":498
     *         """ we are non-sparse block, try to convert to a sparse block(s) """
     *         overlap = set(items.keys()) & set(self.items)
     *         if len(overlap):             # <<<<<<<<<<<<<<
     *             overlap = _ensure_index(overlap)
     *
     */
      __pyx_t_4 = PyObject_Length(__pyx_v_overlap); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     499:             overlap = _ensure_index(overlap)

        /* "pandas/internals.pyx":499
     *         overlap = set(items.keys()) & set(self.items)
     *         if len(overlap):
     *             overlap = _ensure_index(overlap)             # <<<<<<<<<<<<<<
     *
     *             new_blocks = []
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_overlap);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_overlap);
        __Pyx_GIVEREF(__pyx_v_overlap);
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_overlap, __pyx_t_2);
        __pyx_t_2 = 0;

     500:

     501:             new_blocks = []

        /* "pandas/internals.pyx":501
     *             overlap = _ensure_index(overlap)
     *
     *             new_blocks = []             # <<<<<<<<<<<<<<
     *             for item in overlap:
     *                 dtypes = set(items[item])
     */
        __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 501; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_v_new_blocks = ((PyObject*)__pyx_t_2);
        __pyx_t_2 = 0;

     502:             for item in overlap:

        /* "pandas/internals.pyx":502
     *
     *             new_blocks = []
     *             for item in overlap:             # <<<<<<<<<<<<<<
     *                 dtypes = set(items[item])
     *
     */
        if (PyList_CheckExact(__pyx_v_overlap) || PyTuple_CheckExact(__pyx_v_overlap)) {
          __pyx_t_2 = __pyx_v_overlap; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_overlap); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_6(__pyx_t_2);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_1);
          __pyx_t_1 = 0;

     503:                 dtypes = set(items[item])

          /* "pandas/internals.pyx":503
     *             new_blocks = []
     *             for item in overlap:
     *                 dtypes = set(items[item])             # <<<<<<<<<<<<<<
     *
     *                 # this is a safe bet with multiple dtypes
     */
          __pyx_t_1 = PyObject_GetItem(__pyx_v_items, __pyx_v_item); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF_SET(__pyx_v_dtypes, ((PyObject*)__pyx_t_1));
          __pyx_t_1 = 0;

     504:

     505:                 # this is a safe bet with multiple dtypes

     506:                 dtype = list(dtypes)[0] if len(dtypes) == 1 else np.float64

          /* "pandas/internals.pyx":506
     *
     *                 # this is a safe bet with multiple dtypes
     *                 dtype = list(dtypes)[0] if len(dtypes) == 1 else np.float64             # <<<<<<<<<<<<<<
     *
     *                 b = make_block(SparseArray(self.get(item), dtype=dtype),
     */
          __pyx_t_7 = PySet_Size(__pyx_v_dtypes); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (((__pyx_t_7 == 1) != 0)) {
            __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_INCREF(__pyx_v_dtypes);
            PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_dtypes);
            __Pyx_GIVEREF(__pyx_v_dtypes);
            __pyx_t_8 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_3, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_3 = __Pyx_GetItemInt_List(__pyx_t_8, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __pyx_t_1 = __pyx_t_3;
            __pyx_t_3 = 0;
          } else {
            __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_float64); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 506; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_1 = __pyx_t_8;
            __pyx_t_8 = 0;
          }
          __Pyx_XDECREF_SET(__pyx_v_dtype, __pyx_t_1);
          __pyx_t_1 = 0;

     507:

     508:                 b = make_block(SparseArray(self.get(item), dtype=dtype),

          /* "pandas/internals.pyx":508
     *                 dtype = list(dtypes)[0] if len(dtypes) == 1 else np.float64
     *
     *                 b = make_block(SparseArray(self.get(item), dtype=dtype),             # <<<<<<<<<<<<<<
     *                                [item], self.ref_items)
     *                 new_blocks.append(b)
     */
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseArray); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __pyx_t_10 = PyObject_Call(__pyx_t_3, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __pyx_t_10 = 0;
          __pyx_t_10 = PyDict_New(); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_3 = PyObject_Call(__pyx_t_8, __pyx_t_9, __pyx_t_10); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

          /* "pandas/internals.pyx":508
     *                 dtype = list(dtypes)[0] if len(dtypes) == 1 else np.float64
     *
     *                 b = make_block(SparseArray(self.get(item), dtype=dtype),             # <<<<<<<<<<<<<<
     *                                [item], self.ref_items)
     *                 new_blocks.append(b)
     */
          __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_9);
          __pyx_t_3 = 0;
          __pyx_t_10 = 0;
          __pyx_t_9 = 0;
          __pyx_t_9 = PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_9);
          __pyx_t_9 = 0;

     509:                                [item], self.ref_items)

          /* "pandas/internals.pyx":509
     *
     *                 b = make_block(SparseArray(self.get(item), dtype=dtype),
     *                                [item], self.ref_items)             # <<<<<<<<<<<<<<
     *                 new_blocks.append(b)
     *
     */
          __pyx_t_10 = PyList_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 509; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_INCREF(__pyx_v_item);
          PyList_SET_ITEM(__pyx_t_10, 0, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 509; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);

     510:                 new_blocks.append(b)

          /* "pandas/internals.pyx":510
     *                 b = make_block(SparseArray(self.get(item), dtype=dtype),
     *                                [item], self.ref_items)
     *                 new_blocks.append(b)             # <<<<<<<<<<<<<<
     *
     *             return new_blocks
     */
          __pyx_t_11 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_b); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 510; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     511:

     512:             return new_blocks

        /* "pandas/internals.pyx":512
     *                 new_blocks.append(b)
     *
     *             return new_blocks             # <<<<<<<<<<<<<<
     *
     *         return self
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_new_blocks);
        __pyx_r = __pyx_v_new_blocks;
        goto __pyx_L0;
      }

     513:

     514:         return self

      /* "pandas/internals.pyx":514
     *             return new_blocks
     *
     *         return self             # <<<<<<<<<<<<<<
     *
     *     def _can_hold_element(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_self);
      __pyx_r = __pyx_v_self;
      goto __pyx_L0;

     515:

     516:     def _can_hold_element(self, value):

    /* "pandas/internals.pyx":516
     *         return self
     *
     *     def _can_hold_element(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_78_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_78_can_hold_element = {__Pyx_NAMESTR("_can_hold_element"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_78_can_hold_element, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_78_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_can_hold_element") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_77_can_hold_element(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_77_can_hold_element(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element", 0);

      /* "pandas/internals.pyx":516
     *         return self
     *
     *     def _can_hold_element(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":516
     *         return self
     *
     *     def _can_hold_element(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */
      __pyx_tuple__240 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__240)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__240);
      __Pyx_GIVEREF(__pyx_tuple__240);

      /* "pandas/internals.pyx":516
     *         return self
     *
     *     def _can_hold_element(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_78_can_hold_element, 0, __pyx_n_s_Block__can_hold_element, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__241)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_element, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__241 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__240, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_element, 516, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__241)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     517:         raise NotImplementedError()

      /* "pandas/internals.pyx":517
     *
     *     def _can_hold_element(self, value):
     *         raise NotImplementedError()             # <<<<<<<<<<<<<<
     *
     *     def _try_cast(self, value):
     */
      __pyx_t_1 = PyObject_Call(__pyx_builtin_NotImplementedError, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_Raise(__pyx_t_1, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      {__pyx_filename = __pyx_f[0]; __pyx_lineno = 517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     518:

     519:     def _try_cast(self, value):

    /* "pandas/internals.pyx":519
     *         raise NotImplementedError()
     *
     *     def _try_cast(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_80_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_80_try_cast = {__Pyx_NAMESTR("_try_cast"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_80_try_cast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_80_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_79_try_cast(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_79_try_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast", 0);

      /* "pandas/internals.pyx":519
     *         raise NotImplementedError()
     *
     *     def _try_cast(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":519
     *         raise NotImplementedError()
     *
     *     def _try_cast(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */
      __pyx_tuple__242 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__242)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__242);
      __Pyx_GIVEREF(__pyx_tuple__242);

      /* "pandas/internals.pyx":519
     *         raise NotImplementedError()
     *
     *     def _try_cast(self, value):             # <<<<<<<<<<<<<<
     *         raise NotImplementedError()
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_80_try_cast, 0, __pyx_n_s_Block__try_cast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__243)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__243 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__242, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast, 519, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__243)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     520:         raise NotImplementedError()

      /* "pandas/internals.pyx":520
     *
     *     def _try_cast(self, value):
     *         raise NotImplementedError()             # <<<<<<<<<<<<<<
     *
     *     def _try_cast_result(self, result, dtype=None):
     */
      __pyx_t_1 = PyObject_Call(__pyx_builtin_NotImplementedError, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_Raise(__pyx_t_1, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      {__pyx_filename = __pyx_f[0]; __pyx_lineno = 520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     521:

     522:     def _try_cast_result(self, result, dtype=None):

    /* "pandas/internals.pyx":522
     *         raise NotImplementedError()
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         """ try to cast the result to our original type,
     *         we may have roundtripped thru object in the mean-time """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_82_try_cast_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_81_try_cast_result[] = " try to cast the result to our original type,\n        we may have roundtripped thru object in the mean-time ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_82_try_cast_result = {__Pyx_NAMESTR("_try_cast_result"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_82_try_cast_result, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_81_try_cast_result)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_82_try_cast_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_result = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast_result (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_result,&__pyx_n_s_dtype,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast_result", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast_result") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_result = values[1];
        __pyx_v_dtype = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast_result", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._try_cast_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_81_try_cast_result(__pyx_self, __pyx_v_self, __pyx_v_result, __pyx_v_dtype);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_81_try_cast_result(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_result, PyObject *__pyx_v_dtype) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast_result", 0);
      __Pyx_INCREF(__pyx_v_result);
      __Pyx_INCREF(__pyx_v_dtype);

      /* "pandas/internals.pyx":522
     *         raise NotImplementedError()
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         """ try to cast the result to our original type,
     *         we may have roundtripped thru object in the mean-time """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.Block._try_cast_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":522
     *         raise NotImplementedError()
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         """ try to cast the result to our original type,
     *         we may have roundtripped thru object in the mean-time """
     */
      __pyx_tuple__244 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_result, __pyx_n_s_dtype); if (unlikely(!__pyx_tuple__244)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__244);
      __Pyx_GIVEREF(__pyx_tuple__244);
      __pyx_codeobj__245 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__244, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast_result, 522, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__245)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":522
     *         raise NotImplementedError()
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         """ try to cast the result to our original type,
     *         we may have roundtripped thru object in the mean-time """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_82_try_cast_result, 0, __pyx_n_s_Block__try_cast_result, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__245)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__246);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast_result, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__246 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__246)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__246);
      __Pyx_GIVEREF(__pyx_tuple__246);

     523:         """ try to cast the result to our original type,

     524:         we may have roundtripped thru object in the mean-time """

     525:         if dtype is None:

      /* "pandas/internals.pyx":525
     *         """ try to cast the result to our original type,
     *         we may have roundtripped thru object in the mean-time """
     *         if dtype is None:             # <<<<<<<<<<<<<<
     *             dtype = self.dtype
     *
     */
      __pyx_t_1 = (__pyx_v_dtype == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     526:             dtype = self.dtype

        /* "pandas/internals.pyx":526
     *         we may have roundtripped thru object in the mean-time """
     *         if dtype is None:
     *             dtype = self.dtype             # <<<<<<<<<<<<<<
     *
     *         if self.is_integer or self.is_bool or self.is_datetime:
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_dtype, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     527:

     528:         if self.is_integer or self.is_bool or self.is_datetime:

      /* "pandas/internals.pyx":528
     *             dtype = self.dtype
     *
     *         if self.is_integer or self.is_bool or self.is_datetime:             # <<<<<<<<<<<<<<
     *             pass
     *         elif self.is_float and result.dtype == self.dtype:
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_integer); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (!__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_bool); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (!__pyx_t_1) {
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_datetime); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_5 = __pyx_t_4;
        } else {
          __pyx_t_5 = __pyx_t_1;
        }
        __pyx_t_1 = __pyx_t_5;
      } else {
        __pyx_t_1 = __pyx_t_2;
      }
      if (__pyx_t_1) {
        goto __pyx_L4;
      }

     529:             pass

     530:         elif self.is_float and result.dtype == self.dtype:

      /* "pandas/internals.pyx":530
     *         if self.is_integer or self.is_bool or self.is_datetime:
     *             pass
     *         elif self.is_float and result.dtype == self.dtype:             # <<<<<<<<<<<<<<
     *
     *             # protect against a bool/object showing up here
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_float); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_1) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_7 = PyObject_RichCompare(__pyx_t_3, __pyx_t_6, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_5 = __pyx_t_2;
      } else {
        __pyx_t_5 = __pyx_t_1;
      }
      if (__pyx_t_5) {

     531:

     532:             # protect against a bool/object showing up here

     533:             if isinstance(dtype, compat.string_types) and dtype == 'infer':

        /* "pandas/internals.pyx":533
     *
     *             # protect against a bool/object showing up here
     *             if isinstance(dtype, compat.string_types) and dtype == 'infer':             # <<<<<<<<<<<<<<
     *                 return result
     *             if not isinstance(dtype, type):
     */
        __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_compat); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_string_types); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_5 = PyObject_IsInstance(__pyx_v_dtype, __pyx_t_6); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (__pyx_t_5) {
          __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_dtype, __pyx_n_s_infer, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 533; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_2 = __pyx_t_1;
        } else {
          __pyx_t_2 = __pyx_t_5;
        }
        if (__pyx_t_2) {

     534:                 return result

          /* "pandas/internals.pyx":534
     *             # protect against a bool/object showing up here
     *             if isinstance(dtype, compat.string_types) and dtype == 'infer':
     *                 return result             # <<<<<<<<<<<<<<
     *             if not isinstance(dtype, type):
     *                 dtype = dtype.type
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_result);
          __pyx_r = __pyx_v_result;
          goto __pyx_L0;
        }

     535:             if not isinstance(dtype, type):

        /* "pandas/internals.pyx":535
     *             if isinstance(dtype, compat.string_types) and dtype == 'infer':
     *                 return result
     *             if not isinstance(dtype, type):             # <<<<<<<<<<<<<<
     *                 dtype = dtype.type
     *             if issubclass(dtype, (np.bool_, np.object_)):
     */
        __pyx_t_2 = PyType_Check(__pyx_v_dtype);
        __pyx_t_5 = ((!(__pyx_t_2 != 0)) != 0);
        if (__pyx_t_5) {

     536:                 dtype = dtype.type

          /* "pandas/internals.pyx":536
     *                 return result
     *             if not isinstance(dtype, type):
     *                 dtype = dtype.type             # <<<<<<<<<<<<<<
     *             if issubclass(dtype, (np.bool_, np.object_)):
     *                 if issubclass(dtype, np.bool_):
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_dtype, __pyx_n_s_type); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 536; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF_SET(__pyx_v_dtype, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L6;
        }
        __pyx_L6:;

     537:             if issubclass(dtype, (np.bool_, np.object_)):

        /* "pandas/internals.pyx":537
     *             if not isinstance(dtype, type):
     *                 dtype = dtype.type
     *             if issubclass(dtype, (np.bool_, np.object_)):             # <<<<<<<<<<<<<<
     *                 if issubclass(dtype, np.bool_):
     *                     if isnull(result).all():
     */
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_bool); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_object_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7);
        __Pyx_GIVEREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_7 = 0;
        __pyx_t_3 = 0;
        __pyx_t_5 = PyObject_IsSubclass(__pyx_v_dtype, __pyx_t_6); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_2 = (__pyx_t_5 != 0);
        if (__pyx_t_2) {

     538:                 if issubclass(dtype, np.bool_):

          /* "pandas/internals.pyx":538
     *                 dtype = dtype.type
     *             if issubclass(dtype, (np.bool_, np.object_)):
     *                 if issubclass(dtype, np.bool_):             # <<<<<<<<<<<<<<
     *                     if isnull(result).all():
     *                         return result.astype(np.bool_)
     */
          __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_bool); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_2 = PyObject_IsSubclass(__pyx_v_dtype, __pyx_t_3); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_5 = (__pyx_t_2 != 0);
          if (__pyx_t_5) {

     539:                     if isnull(result).all():

            /* "pandas/internals.pyx":539
     *             if issubclass(dtype, (np.bool_, np.object_)):
     *                 if issubclass(dtype, np.bool_):
     *                     if isnull(result).all():             # <<<<<<<<<<<<<<
     *                         return result.astype(np.bool_)
     *                     else:
     */
            __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_INCREF(__pyx_v_result);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_result);
            __Pyx_GIVEREF(__pyx_v_result);
            __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_all); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __pyx_t_7 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            if (__pyx_t_5) {

     540:                         return result.astype(np.bool_)

              /* "pandas/internals.pyx":540
     *                 if issubclass(dtype, np.bool_):
     *                     if isnull(result).all():
     *                         return result.astype(np.bool_)             # <<<<<<<<<<<<<<
     *                     else:
     *                         result = result.astype(np.object_)
     */
              __Pyx_XDECREF(__pyx_r);
              __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_astype); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_7);
              __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_bool); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
              __Pyx_GIVEREF(__pyx_t_3);
              __pyx_t_3 = 0;
              __pyx_t_3 = PyObject_Call(__pyx_t_7, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __pyx_r = __pyx_t_3;
              __pyx_t_3 = 0;
              goto __pyx_L0;
            }
            /*else*/ {

     541:                     else:

     542:                         result = result.astype(np.object_)

              /* "pandas/internals.pyx":542
     *                         return result.astype(np.bool_)
     *                     else:
     *                         result = result.astype(np.object_)             # <<<<<<<<<<<<<<
     *                         result[result == 1] = True
     *                         result[result == 0] = False
     */
              __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_astype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_object_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_7);
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_7);
              __Pyx_GIVEREF(__pyx_t_7);
              __pyx_t_7 = 0;
              __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_7);
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_7);
              __pyx_t_7 = 0;

     543:                         result[result == 1] = True

              /* "pandas/internals.pyx":543
     *                     else:
     *                         result = result.astype(np.object_)
     *                         result[result == 1] = True             # <<<<<<<<<<<<<<
     *                         result[result == 0] = False
     *                         return result
     */
              __pyx_t_7 = PyObject_RichCompare(__pyx_v_result, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              if (unlikely(PyObject_SetItem(__pyx_v_result, __pyx_t_7, Py_True) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

     544:                         result[result == 0] = False

              /* "pandas/internals.pyx":544
     *                         result = result.astype(np.object_)
     *                         result[result == 1] = True
     *                         result[result == 0] = False             # <<<<<<<<<<<<<<
     *                         return result
     *                 else:
     */
              __pyx_t_7 = PyObject_RichCompare(__pyx_v_result, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              if (unlikely(PyObject_SetItem(__pyx_v_result, __pyx_t_7, Py_False) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

     545:                         return result

              /* "pandas/internals.pyx":545
     *                         result[result == 1] = True
     *                         result[result == 0] = False
     *                         return result             # <<<<<<<<<<<<<<
     *                 else:
     *                     return result.astype(np.object_)
     */
              __Pyx_XDECREF(__pyx_r);
              __Pyx_INCREF(__pyx_v_result);
              __pyx_r = __pyx_v_result;
              goto __pyx_L0;
            }
          }
          /*else*/ {

     546:                 else:

     547:                     return result.astype(np.object_)

            /* "pandas/internals.pyx":547
     *                         return result
     *                 else:
     *                     return result.astype(np.object_)             # <<<<<<<<<<<<<<
     *
     *             return result
     */
            __Pyx_XDECREF(__pyx_r);
            __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_astype); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_object_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
            __Pyx_GIVEREF(__pyx_t_3);
            __pyx_t_3 = 0;
            __pyx_t_3 = PyObject_Call(__pyx_t_7, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 547; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_r = __pyx_t_3;
            __pyx_t_3 = 0;
            goto __pyx_L0;
          }
        }

     548:

     549:             return result

        /* "pandas/internals.pyx":549
     *                     return result.astype(np.object_)
     *
     *             return result             # <<<<<<<<<<<<<<
     *
     *         # may need to change the dtype here
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_result);
        __pyx_r = __pyx_v_result;
        goto __pyx_L0;
      }
      __pyx_L4:;

     550:

     551:         # may need to change the dtype here

     552:         return _possibly_downcast_to_dtype(result, dtype)

      /* "pandas/internals.pyx":552
     *
     *         # may need to change the dtype here
     *         return _possibly_downcast_to_dtype(result, dtype)             # <<<<<<<<<<<<<<
     *
     *     def _try_operate(self, values):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_possibly_downcast_to_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 552; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 552; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_result);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_result);
      __Pyx_GIVEREF(__pyx_v_result);
      __Pyx_INCREF(__pyx_v_dtype);
      PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_dtype);
      __Pyx_GIVEREF(__pyx_v_dtype);
      __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 552; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_r = __pyx_t_7;
      __pyx_t_7 = 0;
      goto __pyx_L0;

     553:

     554:     def _try_operate(self, values):

    /* "pandas/internals.pyx":554
     *         return _possibly_downcast_to_dtype(result, dtype)
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on as the input """
     *         return values
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_84_try_operate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_83_try_operate[] = " return a version to operate on as the input ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_84_try_operate = {__Pyx_NAMESTR("_try_operate"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_84_try_operate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_83_try_operate)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_84_try_operate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_operate (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_operate", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_operate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_operate", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._try_operate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_83_try_operate(__pyx_self, __pyx_v_self, __pyx_v_values);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_83_try_operate(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_values) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_operate", 0);

      /* "pandas/internals.pyx":554
     *         return _possibly_downcast_to_dtype(result, dtype)
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on as the input """
     *         return values
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":554
     *         return _possibly_downcast_to_dtype(result, dtype)
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on as the input """
     *         return values
     */
      __pyx_tuple__247 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_values); if (unlikely(!__pyx_tuple__247)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__247);
      __Pyx_GIVEREF(__pyx_tuple__247);

      /* "pandas/internals.pyx":554
     *         return _possibly_downcast_to_dtype(result, dtype)
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on as the input """
     *         return values
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_84_try_operate, 0, __pyx_n_s_Block__try_operate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__248)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_operate, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__248 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__247, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_operate, 554, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__248)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     555:         """ return a version to operate on as the input """

     556:         return values

      /* "pandas/internals.pyx":556
     *     def _try_operate(self, values):
     *         """ return a version to operate on as the input """
     *         return values             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_args(self, values, other):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_values);
      __pyx_r = __pyx_v_values;
      goto __pyx_L0;

     557:

     558:     def _try_coerce_args(self, values, other):

    /* "pandas/internals.pyx":558
     *         return values
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments """
     *         return values, other
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_86_try_coerce_args(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_85_try_coerce_args[] = " provide coercion to our input arguments ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_86_try_coerce_args = {__Pyx_NAMESTR("_try_coerce_args"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_86_try_coerce_args, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_85_try_coerce_args)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_86_try_coerce_args(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_args (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_other,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_coerce_args") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_other = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._try_coerce_args", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_85_try_coerce_args(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_85_try_coerce_args(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_other) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_args", 0);

      /* "pandas/internals.pyx":558
     *         return values
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments """
     *         return values, other
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block._try_coerce_args", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":558
     *         return values
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments """
     *         return values, other
     */
      __pyx_tuple__249 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_other); if (unlikely(!__pyx_tuple__249)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__249);
      __Pyx_GIVEREF(__pyx_tuple__249);

      /* "pandas/internals.pyx":558
     *         return values
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments """
     *         return values, other
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_86_try_coerce_args, 0, __pyx_n_s_Block__try_coerce_args, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__250)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_coerce_args, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__250 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__249, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_coerce_args, 558, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__250)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     559:         """ provide coercion to our input arguments """

     560:         return values, other

      /* "pandas/internals.pyx":560
     *     def _try_coerce_args(self, values, other):
     *         """ provide coercion to our input arguments """
     *         return values, other             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_result(self, result):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     561:

     562:     def _try_coerce_result(self, result):

    /* "pandas/internals.pyx":562
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         return result
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_88_try_coerce_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_87_try_coerce_result[] = " reverse of try_coerce_args ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_88_try_coerce_result = {__Pyx_NAMESTR("_try_coerce_result"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_88_try_coerce_result, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_87_try_coerce_result)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_88_try_coerce_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_result = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_result (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_result,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_result", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_coerce_result") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_result = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_coerce_result", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._try_coerce_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_87_try_coerce_result(__pyx_self, __pyx_v_self, __pyx_v_result);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_87_try_coerce_result(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_result) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_result", 0);

      /* "pandas/internals.pyx":562
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         return result
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":562
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         return result
     */
      __pyx_tuple__251 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_result); if (unlikely(!__pyx_tuple__251)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__251);
      __Pyx_GIVEREF(__pyx_tuple__251);

      /* "pandas/internals.pyx":562
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         return result
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_88_try_coerce_result, 0, __pyx_n_s_Block__try_coerce_result, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__252)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_coerce_result, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__252 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__251, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_coerce_result, 562, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__252)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     563:         """ reverse of try_coerce_args """

     564:         return result

      /* "pandas/internals.pyx":564
     *     def _try_coerce_result(self, result):
     *         """ reverse of try_coerce_args """
     *         return result             # <<<<<<<<<<<<<<
     *
     *     def _try_fill(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     565:

     566:     def _try_fill(self, value):

    /* "pandas/internals.pyx":566
     *         return result
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         return value
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_90_try_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_90_try_fill = {__Pyx_NAMESTR("_try_fill"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_90_try_fill, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_90_try_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_fill (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_fill", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_fill") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_fill", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._try_fill", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_89_try_fill(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_89_try_fill(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_fill", 0);

      /* "pandas/internals.pyx":566
     *         return result
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         return value
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":566
     *         return result
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         return value
     *
     */
      __pyx_tuple__253 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__253)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__253);
      __Pyx_GIVEREF(__pyx_tuple__253);

      /* "pandas/internals.pyx":566
     *         return result
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         return value
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_90_try_fill, 0, __pyx_n_s_Block__try_fill, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__254)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_fill, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__254 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__253, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_fill, 566, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__254)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 566; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     567:         return value

      /* "pandas/internals.pyx":567
     *
     *     def _try_fill(self, value):
     *         return value             # <<<<<<<<<<<<<<
     *
     *     def to_native_types(self, slicer=None, na_rep='', **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_value);
      __pyx_r = __pyx_v_value;
      goto __pyx_L0;

     568:

     569:     def to_native_types(self, slicer=None, na_rep='', **kwargs):

    /* "pandas/internals.pyx":569
     *         return value
     *
     *     def to_native_types(self, slicer=None, na_rep='', **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_92to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_91to_native_types[] = " convert to our native types format, slicing if desired ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_92to_native_types = {__Pyx_NAMESTR("to_native_types"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_92to_native_types, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_91to_native_types)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_92to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slicer = 0;
      PyObject *__pyx_v_na_rep = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slicer,&__pyx_n_s_na_rep,0};
        PyObject* values[3] = {0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        values[2] = ((PyObject *)((PyObject*)__pyx_kp_s__6));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slicer);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_na_rep);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "to_native_types") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_slicer = values[1];
        __pyx_v_na_rep = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("to_native_types", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.Block.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_91to_native_types(__pyx_self, __pyx_v_self, __pyx_v_slicer, __pyx_v_na_rep, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_91to_native_types(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slicer, PyObject *__pyx_v_na_rep, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types", 0);

      /* "pandas/internals.pyx":569
     *         return value
     *
     *     def to_native_types(self, slicer=None, na_rep='', **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":569
     *         return value
     *
     *     def to_native_types(self, slicer=None, na_rep='', **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */
      __pyx_tuple__255 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_slicer, __pyx_n_s_na_rep, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_values, __pyx_n_s_mask); if (unlikely(!__pyx_tuple__255)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__255);
      __Pyx_GIVEREF(__pyx_tuple__255);
      __pyx_codeobj__256 = (PyObject*)__Pyx_PyCode_New(3, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__255, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_to_native_types, 569, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__256)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":569
     *         return value
     *
     *     def to_native_types(self, slicer=None, na_rep='', **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_92to_native_types, 0, __pyx_n_s_Block_to_native_types, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__256)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__257);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_to_native_types, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__257 = PyTuple_Pack(2, ((PyObject *)Py_None), ((PyObject*)__pyx_kp_s__6)); if (unlikely(!__pyx_tuple__257)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 569; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__257);
      __Pyx_GIVEREF(__pyx_tuple__257);

     570:         """ convert to our native types format, slicing if desired """

     571:

     572:         values = self.values

      /* "pandas/internals.pyx":572
     *         """ convert to our native types format, slicing if desired """
     *
     *         values = self.values             # <<<<<<<<<<<<<<
     *         if slicer is not None:
     *             values = values[:, slicer]
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 572; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     573:         if slicer is not None:

      /* "pandas/internals.pyx":573
     *
     *         values = self.values
     *         if slicer is not None:             # <<<<<<<<<<<<<<
     *             values = values[:, slicer]
     *         values = np.array(values, dtype=object)
     */
      __pyx_t_2 = (__pyx_v_slicer != Py_None);
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     574:             values = values[:, slicer]

        /* "pandas/internals.pyx":574
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)
     */
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_slice__7);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_slice__7);
        __Pyx_GIVEREF(__pyx_slice__7);
        __Pyx_INCREF(__pyx_v_slicer);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_slicer);
        __Pyx_GIVEREF(__pyx_v_slicer);
        __pyx_t_4 = PyObject_GetItem(__pyx_v_values, __pyx_t_1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":574
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)
     */
      __pyx_slice__7 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__7);
      __Pyx_GIVEREF(__pyx_slice__7);

     575:         values = np.array(values, dtype=object)

      /* "pandas/internals.pyx":575
     *         if slicer is not None:
     *             values = values[:, slicer]
     *         values = np.array(values, dtype=object)             # <<<<<<<<<<<<<<
     *         mask = isnull(values)
     *         values[mask] = na_rep
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_array); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_6);
      __pyx_t_6 = 0;

     576:         mask = isnull(values)

      /* "pandas/internals.pyx":576
     *             values = values[:, slicer]
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)             # <<<<<<<<<<<<<<
     *         values[mask] = na_rep
     *         return values.tolist()
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 576; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 576; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 576; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_mask = __pyx_t_4;
      __pyx_t_4 = 0;

     577:         values[mask] = na_rep

      /* "pandas/internals.pyx":577
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)
     *         values[mask] = na_rep             # <<<<<<<<<<<<<<
     *         return values.tolist()
     *
     */
      if (unlikely(PyObject_SetItem(__pyx_v_values, __pyx_v_mask, __pyx_v_na_rep) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 577; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     578:         return values.tolist()

      /* "pandas/internals.pyx":578
     *         mask = isnull(values)
     *         values[mask] = na_rep
     *         return values.tolist()             # <<<<<<<<<<<<<<
     *
     *     # block actions ####
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_tolist); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     579:

     580:     # block actions ####

     581:     def copy(self, deep=True, ref_items=None):

    /* "pandas/internals.pyx":581
     *
     *     # block actions ####
     *     def copy(self, deep=True, ref_items=None):             # <<<<<<<<<<<<<<
     *         values = self.values
     *         if deep:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_94copy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_94copy = {__Pyx_NAMESTR("copy"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_94copy, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_94copy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_deep = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("copy (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_deep,&__pyx_n_s_ref_items,0};
        PyObject* values[3] = {0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_True));
        values[2] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_deep);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "copy") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_deep = values[1];
        __pyx_v_ref_items = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("copy", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_93copy(__pyx_self, __pyx_v_self, __pyx_v_deep, __pyx_v_ref_items);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_93copy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_deep, PyObject *__pyx_v_ref_items) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("copy", 0);
      __Pyx_INCREF(__pyx_v_ref_items);

      /* "pandas/internals.pyx":581
     *
     *     # block actions ####
     *     def copy(self, deep=True, ref_items=None):             # <<<<<<<<<<<<<<
     *         values = self.values
     *         if deep:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_ref_items);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":581
     *
     *     # block actions ####
     *     def copy(self, deep=True, ref_items=None):             # <<<<<<<<<<<<<<
     *         values = self.values
     *         if deep:
     */
      __pyx_tuple__258 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_deep, __pyx_n_s_ref_items, __pyx_n_s_values); if (unlikely(!__pyx_tuple__258)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__258);
      __Pyx_GIVEREF(__pyx_tuple__258);
      __pyx_codeobj__259 = (PyObject*)__Pyx_PyCode_New(3, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__258, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_copy, 581, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__259)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":581
     *
     *     # block actions ####
     *     def copy(self, deep=True, ref_items=None):             # <<<<<<<<<<<<<<
     *         values = self.values
     *         if deep:
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_94copy, 0, __pyx_n_s_Block_copy, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__259)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__260);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_copy, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__260 = PyTuple_Pack(2, ((PyObject *)Py_True), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__260)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__260);
      __Pyx_GIVEREF(__pyx_tuple__260);

     582:         values = self.values

      /* "pandas/internals.pyx":582
     *     # block actions ####
     *     def copy(self, deep=True, ref_items=None):
     *         values = self.values             # <<<<<<<<<<<<<<
     *         if deep:
     *             values = values.copy()
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     583:         if deep:

      /* "pandas/internals.pyx":583
     *     def copy(self, deep=True, ref_items=None):
     *         values = self.values
     *         if deep:             # <<<<<<<<<<<<<<
     *             values = values.copy()
     *         if ref_items is None:
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_deep); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 583; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     584:             values = values.copy()

        /* "pandas/internals.pyx":584
     *         values = self.values
     *         if deep:
     *             values = values.copy()             # <<<<<<<<<<<<<<
     *         if ref_items is None:
     *             ref_items = self.ref_items
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_copy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 584; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     585:         if ref_items is None:

      /* "pandas/internals.pyx":585
     *         if deep:
     *             values = values.copy()
     *         if ref_items is None:             # <<<<<<<<<<<<<<
     *             ref_items = self.ref_items
     *         return make_block(values, self.items, ref_items, ndim=self.ndim,
     */
      __pyx_t_2 = (__pyx_v_ref_items == Py_None);
      __pyx_t_4 = (__pyx_t_2 != 0);
      if (__pyx_t_4) {

     586:             ref_items = self.ref_items

        /* "pandas/internals.pyx":586
     *             values = values.copy()
     *         if ref_items is None:
     *             ref_items = self.ref_items             # <<<<<<<<<<<<<<
     *         return make_block(values, self.items, ref_items, ndim=self.ndim,
     *                           klass=self.__class__, fastpath=True,
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_ref_items, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     587:         return make_block(values, self.items, ref_items, ndim=self.ndim,

      /* "pandas/internals.pyx":587
     *         if ref_items is None:
     *             ref_items = self.ref_items
     *         return make_block(values, self.items, ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                           klass=self.__class__, fastpath=True,
     *                           placement=self._ref_locs)
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ndim, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

      /* "pandas/internals.pyx":587
     *         if ref_items is None:
     *             ref_items = self.ref_items
     *         return make_block(values, self.items, ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                           klass=self.__class__, fastpath=True,
     *                           placement=self._ref_locs)
     */
      __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_6;
      __pyx_t_6 = 0;
      goto __pyx_L0;

     588:                           klass=self.__class__, fastpath=True,

      /* "pandas/internals.pyx":588
     *             ref_items = self.ref_items
     *         return make_block(values, self.items, ref_items, ndim=self.ndim,
     *                           klass=self.__class__, fastpath=True,             # <<<<<<<<<<<<<<
     *                           placement=self._ref_locs)
     *
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 588; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_klass, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     589:                           placement=self._ref_locs)

      /* "pandas/internals.pyx":589
     *         return make_block(values, self.items, ref_items, ndim=self.ndim,
     *                           klass=self.__class__, fastpath=True,
     *                           placement=self._ref_locs)             # <<<<<<<<<<<<<<
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 589; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_placement, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     590:

     591:     def replace(self, to_replace, value, inplace=False, filter=None,

    /* "pandas/internals.pyx":591
     *                           placement=self._ref_locs)
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         """ replace the to_replace value with value, possible to create new
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_96replace(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_95replace[] = " replace the to_replace value with value, possible to create new\n        blocks here this is just a call to putmask. regex is not used here.\n        It is used in ObjectBlocks.  It is here for API\n        compatibility.";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_96replace = {__Pyx_NAMESTR("replace"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_96replace, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_95replace)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_96replace(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_to_replace = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_filter = 0;
      CYTHON_UNUSED PyObject *__pyx_v_regex = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_to_replace,&__pyx_n_s_value,&__pyx_n_s_inplace,&__pyx_n_s_filter,&__pyx_n_s_regex,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":591
     *                           placement=self._ref_locs)
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         """ replace the to_replace value with value, possible to create new
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_95replace(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_to_replace, PyObject *__pyx_v_value, PyObject *__pyx_v_inplace, PyObject *__pyx_v_filter, CYTHON_UNUSED PyObject *__pyx_v_regex) {
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace", 0);

      /* "pandas/internals.pyx":591
     *                           placement=self._ref_locs)
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         """ replace the to_replace value with value, possible to create new
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.Block.replace", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":591
     *                           placement=self._ref_locs)
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         """ replace the to_replace value with value, possible to create new
     */
      __pyx_tuple__261 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_to_replace, __pyx_n_s_value, __pyx_n_s_inplace, __pyx_n_s_filter, __pyx_n_s_regex, __pyx_n_s_mask, __pyx_n_s_i, __pyx_n_s_item); if (unlikely(!__pyx_tuple__261)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__261);
      __Pyx_GIVEREF(__pyx_tuple__261);
      __pyx_codeobj__262 = (PyObject*)__Pyx_PyCode_New(6, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__261, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_replace, 591, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__262)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":591
     *                           placement=self._ref_locs)
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         """ replace the to_replace value with value, possible to create new
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_96replace, 0, __pyx_n_s_Block_replace, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__262)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__263);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_replace, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__263 = PyTuple_Pack(3, ((PyObject *)Py_False), ((PyObject *)Py_None), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__263)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__263);
      __Pyx_GIVEREF(__pyx_tuple__263);

     592:                 regex=False):

        /* "pandas/internals.pyx":592
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,
     *                 regex=False):             # <<<<<<<<<<<<<<
     *         """ replace the to_replace value with value, possible to create new
     *         blocks here this is just a call to putmask. regex is not used here.
     */
        values[5] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_to_replace)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("replace", 0, 3, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("replace", 0, 3, 6, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_filter);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_regex);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "replace") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_to_replace = values[1];
        __pyx_v_value = values[2];
        __pyx_v_inplace = values[3];
        __pyx_v_filter = values[4];
        __pyx_v_regex = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("replace", 0, 3, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 591; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.replace", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_95replace(__pyx_self, __pyx_v_self, __pyx_v_to_replace, __pyx_v_value, __pyx_v_inplace, __pyx_v_filter, __pyx_v_regex);

     593:         """ replace the to_replace value with value, possible to create new

     594:         blocks here this is just a call to putmask. regex is not used here.

     595:         It is used in ObjectBlocks.  It is here for API

     596:         compatibility."""

     597:         mask = com.mask_missing(self.values, to_replace)

      /* "pandas/internals.pyx":597
     *         It is used in ObjectBlocks.  It is here for API
     *         compatibility."""
     *         mask = com.mask_missing(self.values, to_replace)             # <<<<<<<<<<<<<<
     *         if filter is not None:
     *             for i, item in enumerate(self.items):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 597; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_mask_missing); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 597; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 597; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 597; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_to_replace);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_to_replace);
      __Pyx_GIVEREF(__pyx_v_to_replace);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 597; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_mask = __pyx_t_1;
      __pyx_t_1 = 0;

     598:         if filter is not None:

      /* "pandas/internals.pyx":598
     *         compatibility."""
     *         mask = com.mask_missing(self.values, to_replace)
     *         if filter is not None:             # <<<<<<<<<<<<<<
     *             for i, item in enumerate(self.items):
     *                 if item not in filter:
     */
      __pyx_t_4 = (__pyx_v_filter != Py_None);
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     599:             for i, item in enumerate(self.items):

        /* "pandas/internals.pyx":599
     *         mask = com.mask_missing(self.values, to_replace)
     *         if filter is not None:
     *             for i, item in enumerate(self.items):             # <<<<<<<<<<<<<<
     *                 if item not in filter:
     *                     mask[i] = False
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_1 = __pyx_int_0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
          __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_3 = __pyx_t_7(__pyx_t_2);
            if (unlikely(!__pyx_t_3)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_3);
          }
          __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_3);
          __pyx_t_3 = 0;
          __Pyx_INCREF(__pyx_t_1);
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
          __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1);
          __pyx_t_1 = __pyx_t_3;
          __pyx_t_3 = 0;

     600:                 if item not in filter:

          /* "pandas/internals.pyx":600
     *         if filter is not None:
     *             for i, item in enumerate(self.items):
     *                 if item not in filter:             # <<<<<<<<<<<<<<
     *                     mask[i] = False
     *
     */
          __pyx_t_5 = (__Pyx_PySequence_Contains(__pyx_v_item, __pyx_v_filter, Py_NE)); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_4 = (__pyx_t_5 != 0);
          if (__pyx_t_4) {

     601:                     mask[i] = False

            /* "pandas/internals.pyx":601
     *             for i, item in enumerate(self.items):
     *                 if item not in filter:
     *                     mask[i] = False             # <<<<<<<<<<<<<<
     *
     *         if not mask.any():
     */
            if (unlikely(PyObject_SetItem(__pyx_v_mask, __pyx_v_i, Py_False) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            goto __pyx_L6;
          }
          __pyx_L6:;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     602:

     603:         if not mask.any():

      /* "pandas/internals.pyx":603
     *                     mask[i] = False
     *
     *         if not mask.any():             # <<<<<<<<<<<<<<
     *             if inplace:
     *                 return [self]
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_mask, __pyx_n_s_any); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {

     604:             if inplace:

        /* "pandas/internals.pyx":604
     *
     *         if not mask.any():
     *             if inplace:             # <<<<<<<<<<<<<<
     *                 return [self]
     *             return [self.copy()]
     */
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 604; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_5) {

     605:                 return [self]

          /* "pandas/internals.pyx":605
     *         if not mask.any():
     *             if inplace:
     *                 return [self]             # <<<<<<<<<<<<<<
     *             return [self.copy()]
     *         return self.putmask(mask, value, inplace=inplace)
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_self);
          PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self);
          __Pyx_GIVEREF(__pyx_v_self);
          __pyx_r = __pyx_t_2;
          __pyx_t_2 = 0;
          goto __pyx_L0;
        }

     606:             return [self.copy()]

        /* "pandas/internals.pyx":606
     *             if inplace:
     *                 return [self]
     *             return [self.copy()]             # <<<<<<<<<<<<<<
     *         return self.putmask(mask, value, inplace=inplace)
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }

     607:         return self.putmask(mask, value, inplace=inplace)

      /* "pandas/internals.pyx":607
     *                 return [self]
     *             return [self.copy()]
     *         return self.putmask(mask, value, inplace=inplace)             # <<<<<<<<<<<<<<
     *
     *     def setitem(self, indexer, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_putmask); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_mask);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_mask);
      __Pyx_GIVEREF(__pyx_v_mask);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_8 = PyObject_Call(__pyx_t_2, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_8;
      __pyx_t_8 = 0;
      goto __pyx_L0;

     608:

     609:     def setitem(self, indexer, value):

    /* "pandas/internals.pyx":609
     *         return self.putmask(mask, value, inplace=inplace)
     *
     *     def setitem(self, indexer, value):             # <<<<<<<<<<<<<<
     *         """ set the value inplace; return a new block (of a possibly different
     *         dtype)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_98setitem(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_97setitem[] = " set the value inplace; return a new block (of a possibly different\n        dtype)\n\n        indexer is a direct slice/positional indexer; value must be a\n        compatible shape\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_98setitem = {__Pyx_NAMESTR("setitem"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_98setitem, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_97setitem)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_98setitem(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("setitem (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_value,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("setitem", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("setitem", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "setitem") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_value = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("setitem", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.setitem", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_97setitem(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":609
     *         return self.putmask(mask, value, inplace=inplace)
     *
     *     def setitem(self, indexer, value):             # <<<<<<<<<<<<<<
     *         """ set the value inplace; return a new block (of a possibly different
     *         dtype)
     */

    static PyObject *__pyx_pf_6pandas_9internals_5Block_97setitem(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, PyObject *__pyx_v_value) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_arr_value = NULL;
      PyObject *__pyx_v_dtype = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_v_transf = NULL;
      Py_ssize_t __pyx_v_l;
      CYTHON_UNUSED PyObject *__pyx_v_detail = NULL;
      PyObject *__pyx_v_idx = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("setitem", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":609
     *         return self.putmask(mask, value, inplace=inplace)
     *
     *     def setitem(self, indexer, value):             # <<<<<<<<<<<<<<
     *         """ set the value inplace; return a new block (of a possibly different
     *         dtype)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_16);
      __Pyx_AddTraceback("pandas.internals.Block.setitem", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_arr_value);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XDECREF(__pyx_v_transf);
      __Pyx_XDECREF(__pyx_v_detail);
      __Pyx_XDECREF(__pyx_v_idx);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":609
     *         return self.putmask(mask, value, inplace=inplace)
     *
     *     def setitem(self, indexer, value):             # <<<<<<<<<<<<<<
     *         """ set the value inplace; return a new block (of a possibly different
     *         dtype)
     */
      __pyx_tuple__264 = PyTuple_Pack(11, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_value, __pyx_n_s_values, __pyx_n_s_arr_value, __pyx_n_s_dtype, __pyx_n_s__10, __pyx_n_s_transf, __pyx_n_s_l, __pyx_n_s_detail, __pyx_n_s_idx); if (unlikely(!__pyx_tuple__264)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__264);
      __Pyx_GIVEREF(__pyx_tuple__264);

      /* "pandas/internals.pyx":609
     *         return self.putmask(mask, value, inplace=inplace)
     *
     *     def setitem(self, indexer, value):             # <<<<<<<<<<<<<<
     *         """ set the value inplace; return a new block (of a possibly different
     *         dtype)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_98setitem, 0, __pyx_n_s_Block_setitem, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__265)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_setitem, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__265 = (PyObject*)__Pyx_PyCode_New(3, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__264, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_setitem, 609, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__265)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     610:         """ set the value inplace; return a new block (of a possibly different

     611:         dtype)

     612:

     613:         indexer is a direct slice/positional indexer; value must be a

     614:         compatible shape

     615:         """

     616:

     617:         # coerce args

     618:         values, value = self._try_coerce_args(self.values, value)

      /* "pandas/internals.pyx":618
     *
     *         # coerce args
     *         values, value = self._try_coerce_args(self.values, value)             # <<<<<<<<<<<<<<
     *         arr_value = np.array(value)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_coerce_args); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
        PyObject* sequence = __pyx_t_2;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_3 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        index = 1; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 618; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_values = __pyx_t_3;
      __pyx_t_3 = 0;
      __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_1);
      __pyx_t_1 = 0;

     619:         arr_value = np.array(value)

      /* "pandas/internals.pyx":619
     *         # coerce args
     *         values, value = self._try_coerce_args(self.values, value)
     *         arr_value = np.array(value)             # <<<<<<<<<<<<<<
     *
     *         # cast the values to a type that can hold nan (if necessary)
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_array); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 619; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_arr_value = __pyx_t_3;
      __pyx_t_3 = 0;

     620:

     621:         # cast the values to a type that can hold nan (if necessary)

     622:         if not self._can_hold_element(value):

      /* "pandas/internals.pyx":622
     *
     *         # cast the values to a type that can hold nan (if necessary)
     *         if not self._can_hold_element(value):             # <<<<<<<<<<<<<<
     *             dtype, _ = com._maybe_promote(arr_value.dtype)
     *             values = values.astype(dtype)
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_can_hold_element); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_7 = ((!__pyx_t_6) != 0);
      if (__pyx_t_7) {

     623:             dtype, _ = com._maybe_promote(arr_value.dtype)

        /* "pandas/internals.pyx":623
     *         # cast the values to a type that can hold nan (if necessary)
     *         if not self._can_hold_element(value):
     *             dtype, _ = com._maybe_promote(arr_value.dtype)             # <<<<<<<<<<<<<<
     *             values = values.astype(dtype)
     *
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_maybe_promote); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_arr_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
          PyObject* sequence = __pyx_t_1;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_2);
          #else
          __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          #endif
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_4 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
          index = 0; __pyx_t_3 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          index = 1; __pyx_t_2 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_5 = NULL;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L7_unpacking_done;
          __pyx_L6_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_5 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L7_unpacking_done:;
        }
        __pyx_v_dtype = __pyx_t_3;
        __pyx_t_3 = 0;
        __pyx_v__ = __pyx_t_2;
        __pyx_t_2 = 0;

     624:             values = values.astype(dtype)

        /* "pandas/internals.pyx":624
     *         if not self._can_hold_element(value):
     *             dtype, _ = com._maybe_promote(arr_value.dtype)
     *             values = values.astype(dtype)             # <<<<<<<<<<<<<<
     *
     *         transf = (lambda x: x.T) if self.ndim == 2 else (lambda x: x)
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_astype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_dtype);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_dtype);
        __Pyx_GIVEREF(__pyx_v_dtype);
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L5;
      }
      __pyx_L5:;

     625:

     626:         transf = (lambda x: x.T) if self.ndim == 2 else (lambda x: x)

    /* "pandas/internals.pyx":626
     *             values = values.astype(dtype)
     *
     *         transf = (lambda x: x.T) if self.ndim == 2 else (lambda x: x)             # <<<<<<<<<<<<<<
     *         values = transf(values)
     *         l = len(values)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7setitem_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_7setitem_lambda1 = {__Pyx_NAMESTR("lambda1"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_7setitem_lambda1, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7setitem_lambda1(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda1 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda1(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda1(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda1", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_T); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block.setitem.lambda1", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7setitem_1lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_7setitem_1lambda2 = {__Pyx_NAMESTR("lambda2"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_7setitem_1lambda2, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7setitem_1lambda2(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda2 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda2(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda2(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda2", 0);
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_x);
      __pyx_r = __pyx_v_x;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":626
     *             values = values.astype(dtype)
     *
     *         transf = (lambda x: x.T) if self.ndim == 2 else (lambda x: x)             # <<<<<<<<<<<<<<
     *         values = transf(values)
     *         l = len(values)
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_int_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_7) {
        __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_7setitem_lambda1, 0, __pyx_n_s_Block_setitem_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __pyx_t_1;
        __pyx_t_1 = 0;
      } else {
        __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_7setitem_1lambda2, 0, __pyx_n_s_Block_setitem_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __pyx_t_1;
        __pyx_t_1 = 0;
      }
      __pyx_v_transf = __pyx_t_3;
      __pyx_t_3 = 0;

     627:         values = transf(values)

      /* "pandas/internals.pyx":627
     *
     *         transf = (lambda x: x.T) if self.ndim == 2 else (lambda x: x)
     *         values = transf(values)             # <<<<<<<<<<<<<<
     *         l = len(values)
     *
     */
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_1 = PyObject_Call(__pyx_v_transf, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
      __pyx_t_1 = 0;

     628:         l = len(values)

      /* "pandas/internals.pyx":628
     *         transf = (lambda x: x.T) if self.ndim == 2 else (lambda x: x)
     *         values = transf(values)
     *         l = len(values)             # <<<<<<<<<<<<<<
     *
     *         # length checking
     */
      __pyx_t_8 = PyObject_Length(__pyx_v_values); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 628; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_v_l = __pyx_t_8;

     629:

     630:         # length checking

     631:         # boolean with truth values == len of the value is ok too

     632:         if isinstance(indexer, (np.ndarray, list)):

      /* "pandas/internals.pyx":632
     *         # length checking
     *         # boolean with truth values == len of the value is ok too
     *         if isinstance(indexer, (np.ndarray, list)):             # <<<<<<<<<<<<<<
     *             if is_list_like(value) and len(indexer) != len(value):
     *                 if not (isinstance(indexer, np.ndarray) and
     */
      __Pyx_INCREF(__pyx_v_indexer);
      __pyx_t_1 = __pyx_v_indexer;
      __pyx_t_7 = __Pyx_TypeCheck(__pyx_t_1, ((PyObject*)__pyx_ptype_5numpy_ndarray));
      if (!__pyx_t_7) {
        __pyx_t_6 = PyList_Check(__pyx_t_1);
        __pyx_t_9 = __pyx_t_6;
      } else {
        __pyx_t_9 = __pyx_t_7;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_7 = (__pyx_t_9 != 0);
      if (__pyx_t_7) {

     633:             if is_list_like(value) and len(indexer) != len(value):

        /* "pandas/internals.pyx":633
     *         # boolean with truth values == len of the value is ok too
     *         if isinstance(indexer, (np.ndarray, list)):
     *             if is_list_like(value) and len(indexer) != len(value):             # <<<<<<<<<<<<<<
     *                 if not (isinstance(indexer, np.ndarray) and
     *                         indexer.dtype == np.bool_ and
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (__pyx_t_7) {
          __pyx_t_8 = PyObject_Length(__pyx_v_indexer); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_10 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = (__pyx_t_8 != __pyx_t_10);
          __pyx_t_6 = __pyx_t_9;
        } else {
          __pyx_t_6 = __pyx_t_7;
        }
        if (__pyx_t_6) {

     634:                 if not (isinstance(indexer, np.ndarray) and

          /* "pandas/internals.pyx":634
     *         if isinstance(indexer, (np.ndarray, list)):
     *             if is_list_like(value) and len(indexer) != len(value):
     *                 if not (isinstance(indexer, np.ndarray) and             # <<<<<<<<<<<<<<
     *                         indexer.dtype == np.bool_ and
     *                         len(indexer[indexer]) == len(value)):
     */
          __pyx_t_6 = __Pyx_TypeCheck(__pyx_v_indexer, ((PyObject*)__pyx_ptype_5numpy_ndarray));
          if (__pyx_t_6) {

          /* "pandas/internals.pyx":634
     *         if isinstance(indexer, (np.ndarray, list)):
     *             if is_list_like(value) and len(indexer) != len(value):
     *                 if not (isinstance(indexer, np.ndarray) and             # <<<<<<<<<<<<<<
     *                         indexer.dtype == np.bool_ and
     *                         len(indexer[indexer]) == len(value)):
     */
          __pyx_t_6 = ((!__pyx_t_7) != 0);
          if (__pyx_t_6) {

     635:                         indexer.dtype == np.bool_ and

            /* "pandas/internals.pyx":635
     *             if is_list_like(value) and len(indexer) != len(value):
     *                 if not (isinstance(indexer, np.ndarray) and
     *                         indexer.dtype == np.bool_ and             # <<<<<<<<<<<<<<
     *                         len(indexer[indexer]) == len(value)):
     *                     raise ValueError("cannot set using a list-like indexer "
     */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_indexer, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_bool); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            if (__pyx_t_7) {

     636:                         len(indexer[indexer]) == len(value)):

              /* "pandas/internals.pyx":636
     *                 if not (isinstance(indexer, np.ndarray) and
     *                         indexer.dtype == np.bool_ and
     *                         len(indexer[indexer]) == len(value)):             # <<<<<<<<<<<<<<
     *                     raise ValueError("cannot set using a list-like indexer "
     *                                      "with a different length than the value")
     */
              __pyx_t_3 = PyObject_GetItem(__pyx_v_indexer, __pyx_v_indexer); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_3);
              __pyx_t_10 = PyObject_Length(__pyx_t_3); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              __pyx_t_8 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_9 = (__pyx_t_10 == __pyx_t_8);
              __pyx_t_11 = __pyx_t_9;
            } else {
              __pyx_t_11 = __pyx_t_7;
            }
            __pyx_t_7 = __pyx_t_11;
          } else {
            __pyx_t_7 = __pyx_t_6;
          }

     637:                     raise ValueError("cannot set using a list-like indexer "

            /* "pandas/internals.pyx":637
     *                         indexer.dtype == np.bool_ and
     *                         len(indexer[indexer]) == len(value)):
     *                     raise ValueError("cannot set using a list-like indexer "             # <<<<<<<<<<<<<<
     *                                      "with a different length than the value")
     *
     */
            __pyx_t_3 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__8, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_Raise(__pyx_t_3, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          goto __pyx_L9;
        }
        __pyx_L9:;
        goto __pyx_L8;
      }

      /* "pandas/internals.pyx":637
     *                         indexer.dtype == np.bool_ and
     *                         len(indexer[indexer]) == len(value)):
     *                     raise ValueError("cannot set using a list-like indexer "             # <<<<<<<<<<<<<<
     *                                      "with a different length than the value")
     *
     */
      __pyx_tuple__8 = PyTuple_Pack(1, __pyx_kp_s_cannot_set_using_a_list_like_ind); if (unlikely(!__pyx_tuple__8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__8);
      __Pyx_GIVEREF(__pyx_tuple__8);

     638:                                      "with a different length than the value")

     639:

     640:         # slice

     641:         elif isinstance(indexer, slice):

      /* "pandas/internals.pyx":641
     *
     *         # slice
     *         elif isinstance(indexer, slice):             # <<<<<<<<<<<<<<
     *
     *             if is_list_like(value) and l:
     */
      __pyx_t_6 = PySlice_Check(__pyx_v_indexer);
      __pyx_t_7 = (__pyx_t_6 != 0);
      if (__pyx_t_7) {

     642:

     643:             if is_list_like(value) and l:

        /* "pandas/internals.pyx":643
     *         elif isinstance(indexer, slice):
     *
     *             if is_list_like(value) and l:             # <<<<<<<<<<<<<<
     *                 if len(value) != _length_of_indexer(indexer, values):
     *                     raise ValueError("cannot set using a slice indexer with a "
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (__pyx_t_7) {
          __pyx_t_6 = (__pyx_v_l != 0);
        } else {
          __pyx_t_6 = __pyx_t_7;
        }
        if (__pyx_t_6) {

     644:                 if len(value) != _length_of_indexer(indexer, values):

          /* "pandas/internals.pyx":644
     *
     *             if is_list_like(value) and l:
     *                 if len(value) != _length_of_indexer(indexer, values):             # <<<<<<<<<<<<<<
     *                     raise ValueError("cannot set using a slice indexer with a "
     *                                      "different length than the value")
     */
          __pyx_t_8 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_2 = PyInt_FromSsize_t(__pyx_t_8); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_length_of_indexer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_indexer);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_indexer);
          __Pyx_GIVEREF(__pyx_v_indexer);
          __Pyx_INCREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_values);
          __Pyx_GIVEREF(__pyx_v_values);
          __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          if (__pyx_t_6) {

     645:                     raise ValueError("cannot set using a slice indexer with a "

            /* "pandas/internals.pyx":645
     *             if is_list_like(value) and l:
     *                 if len(value) != _length_of_indexer(indexer, values):
     *                     raise ValueError("cannot set using a slice indexer with a "             # <<<<<<<<<<<<<<
     *                                      "different length than the value")
     *
     */
            __pyx_t_3 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__9, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_Raise(__pyx_t_3, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          goto __pyx_L11;
        }
        __pyx_L11:;
        goto __pyx_L8;
      }
      __pyx_L8:;

      /* "pandas/internals.pyx":645
     *             if is_list_like(value) and l:
     *                 if len(value) != _length_of_indexer(indexer, values):
     *                     raise ValueError("cannot set using a slice indexer with a "             # <<<<<<<<<<<<<<
     *                                      "different length than the value")
     *
     */
      __pyx_tuple__9 = PyTuple_Pack(1, __pyx_kp_s_cannot_set_using_a_slice_indexer); if (unlikely(!__pyx_tuple__9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__9);
      __Pyx_GIVEREF(__pyx_tuple__9);

     646:                                      "different length than the value")

     647:

     648:         try:

      /* "pandas/internals.pyx":648
     *                                      "different length than the value")
     *
     *         try:             # <<<<<<<<<<<<<<
     *             # setting a single element for each dim and with a rhs that could be say a list
     *             # GH 6043
     */
      {
        /*try:*/ {

     649:             # setting a single element for each dim and with a rhs that could be say a list

     650:             # GH 6043

     651:             if arr_value.ndim == 1 and (

          /* "pandas/internals.pyx":651
     *             # setting a single element for each dim and with a rhs that could be say a list
     *             # GH 6043
     *             if arr_value.ndim == 1 and (             # <<<<<<<<<<<<<<
     *                 np.isscalar(indexer) or (isinstance(indexer, tuple) and all([ np.isscalar(idx) for idx in indexer ]))):
     *                 values[indexer] = value
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_arr_value, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 651; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          if (__pyx_t_6) {

     652:                 np.isscalar(indexer) or (isinstance(indexer, tuple) and all([ np.isscalar(idx) for idx in indexer ]))):

            /* "pandas/internals.pyx":652
     *             # GH 6043
     *             if arr_value.ndim == 1 and (
     *                 np.isscalar(indexer) or (isinstance(indexer, tuple) and all([ np.isscalar(idx) for idx in indexer ]))):             # <<<<<<<<<<<<<<
     *                 values[indexer] = value
     *
     */
            __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_isscalar); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_INCREF(__pyx_v_indexer);
            PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_indexer);
            __Pyx_GIVEREF(__pyx_v_indexer);
            __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            if (!__pyx_t_7) {
              __pyx_t_11 = PyTuple_Check(__pyx_v_indexer);
              if (__pyx_t_11) {
                __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                __Pyx_GOTREF(__pyx_t_2);
                if (PyList_CheckExact(__pyx_v_indexer) || PyTuple_CheckExact(__pyx_v_indexer)) {
                  __pyx_t_4 = __pyx_v_indexer; __Pyx_INCREF(__pyx_t_4); __pyx_t_8 = 0;
                  __pyx_t_15 = NULL;
                } else {
                  __pyx_t_8 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_indexer); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                  __Pyx_GOTREF(__pyx_t_4);
                  __pyx_t_15 = Py_TYPE(__pyx_t_4)->tp_iternext;
                }
                for (;;) {
                  if (!__pyx_t_15 && PyList_CheckExact(__pyx_t_4)) {
                    if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_4)) break;
                    #if CYTHON_COMPILING_IN_CPYTHON
                    __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_8); __Pyx_INCREF(__pyx_t_3); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                    #else
                    __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                    #endif
                  } else if (!__pyx_t_15 && PyTuple_CheckExact(__pyx_t_4)) {
                    if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
                    #if CYTHON_COMPILING_IN_CPYTHON
                    __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_8); __Pyx_INCREF(__pyx_t_3); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                    #else
                    __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                    #endif
                  } else {
                    __pyx_t_3 = __pyx_t_15(__pyx_t_4);
                    if (unlikely(!__pyx_t_3)) {
                      PyObject* exc_type = PyErr_Occurred();
                      if (exc_type) {
                        if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                        else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                      }
                      break;
                    }
                    __Pyx_GOTREF(__pyx_t_3);
                  }
                  __Pyx_XDECREF_SET(__pyx_v_idx, __pyx_t_3);
                  __pyx_t_3 = 0;
                  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_isscalar); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                  __Pyx_GOTREF(__pyx_t_1);
                  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                  __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __Pyx_INCREF(__pyx_v_idx);
                  PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_idx);
                  __Pyx_GIVEREF(__pyx_v_idx);
                  __pyx_t_16 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                  __Pyx_GOTREF(__pyx_t_16);
                  __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
                  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                  if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_16))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                  __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                }
                __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                __Pyx_GOTREF(__pyx_t_4);
                PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
                __Pyx_GIVEREF(__pyx_t_2);
                __pyx_t_2 = 0;
                __pyx_t_2 = PyObject_Call(__pyx_builtin_all, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                __Pyx_GOTREF(__pyx_t_2);
                __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 652; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
                __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
                __pyx_t_17 = __pyx_t_9;
              } else {
                __pyx_t_17 = __pyx_t_11;
              }
              __pyx_t_11 = __pyx_t_17;
            } else {
              __pyx_t_11 = __pyx_t_7;
            }
            __pyx_t_7 = __pyx_t_11;
          } else {
            __pyx_t_7 = __pyx_t_6;
          }
          if (__pyx_t_7) {

     653:                 values[indexer] = value

            /* "pandas/internals.pyx":653
     *             if arr_value.ndim == 1 and (
     *                 np.isscalar(indexer) or (isinstance(indexer, tuple) and all([ np.isscalar(idx) for idx in indexer ]))):
     *                 values[indexer] = value             # <<<<<<<<<<<<<<
     *
     *             # if we are an exact match (ex-broadcasting),
     */
            if (unlikely(PyObject_SetItem(__pyx_v_values, __pyx_v_indexer, __pyx_v_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 653; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            goto __pyx_L21;
          }

     654:

     655:             # if we are an exact match (ex-broadcasting),

     656:             # then use the resultant dtype

     657:             elif len(arr_value.shape) and arr_value.shape[0] == values.shape[0] and np.prod(arr_value.shape) == np.prod(values.shape):

          /* "pandas/internals.pyx":657
     *             # if we are an exact match (ex-broadcasting),
     *             # then use the resultant dtype
     *             elif len(arr_value.shape) and arr_value.shape[0] == values.shape[0] and np.prod(arr_value.shape) == np.prod(values.shape):             # <<<<<<<<<<<<<<
     *                 values = arr_value.reshape(values.shape)
     *
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_arr_value, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_8 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          if ((__pyx_t_8 != 0)) {
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_arr_value, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_2, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;};
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_16 = __Pyx_GetItemInt(__pyx_t_2, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_16 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;};
            __Pyx_GOTREF(__pyx_t_16);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_t_2 = PyObject_RichCompare(__pyx_t_4, __pyx_t_16, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            if (__pyx_t_7) {
              __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_prod); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_16);
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_arr_value, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_4);
              PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
              __Pyx_GIVEREF(__pyx_t_2);
              __pyx_t_2 = 0;
              __pyx_t_2 = PyObject_Call(__pyx_t_16, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
              __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_4);
              __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_prod); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_16);
              __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_4);
              __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_3);
              PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
              __Pyx_GIVEREF(__pyx_t_4);
              __pyx_t_4 = 0;
              __pyx_t_4 = PyObject_Call(__pyx_t_16, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_4);
              __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              __pyx_t_3 = PyObject_RichCompare(__pyx_t_2, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 657; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              __pyx_t_11 = __pyx_t_6;
            } else {
              __pyx_t_11 = __pyx_t_7;
            }
            __pyx_t_7 = __pyx_t_11;
          } else {
            __pyx_t_7 = (__pyx_t_8 != 0);
          }
          if (__pyx_t_7) {

     658:                 values = arr_value.reshape(values.shape)

            /* "pandas/internals.pyx":658
     *             # then use the resultant dtype
     *             elif len(arr_value.shape) and arr_value.shape[0] == values.shape[0] and np.prod(arr_value.shape) == np.prod(values.shape):
     *                 values = arr_value.reshape(values.shape)             # <<<<<<<<<<<<<<
     *
     *             # set
     */
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_arr_value, __pyx_n_s_reshape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_2);
            PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_4);
            __pyx_t_4 = 0;
            __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 658; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_4);
            __pyx_t_4 = 0;
            goto __pyx_L21;
          }
          /*else*/ {

     659:

     660:             # set

     661:             else:

     662:                 values[indexer] = value

            /* "pandas/internals.pyx":662
     *             # set
     *             else:
     *                 values[indexer] = value             # <<<<<<<<<<<<<<
     *
     *             # coerce and try to infer the dtypes of the result
     */
            if (unlikely(PyObject_SetItem(__pyx_v_values, __pyx_v_indexer, __pyx_v_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 662; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          }
          __pyx_L21:;

     663:

     664:             # coerce and try to infer the dtypes of the result

     665:             if np.isscalar(value):

          /* "pandas/internals.pyx":665
     *
     *             # coerce and try to infer the dtypes of the result
     *             if np.isscalar(value):             # <<<<<<<<<<<<<<
     *                 dtype, _ = _infer_dtype_from_scalar(value)
     *             else:
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 665; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_isscalar); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 665; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 665; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_value);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_value);
          __Pyx_GIVEREF(__pyx_v_value);
          __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 665; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 665; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          if (__pyx_t_7) {

     666:                 dtype, _ = _infer_dtype_from_scalar(value)

            /* "pandas/internals.pyx":666
     *             # coerce and try to infer the dtypes of the result
     *             if np.isscalar(value):
     *                 dtype, _ = _infer_dtype_from_scalar(value)             # <<<<<<<<<<<<<<
     *             else:
     *                 dtype = 'infer'
     */
            __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_infer_dtype_from_scalar); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_INCREF(__pyx_v_value);
            PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_value);
            __Pyx_GIVEREF(__pyx_v_value);
            __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
              PyObject* sequence = __pyx_t_2;
              #if CYTHON_COMPILING_IN_CPYTHON
              Py_ssize_t size = Py_SIZE(sequence);
              #else
              Py_ssize_t size = PySequence_Size(sequence);
              #endif
              if (unlikely(size != 2)) {
                if (size > 2) __Pyx_RaiseTooManyValuesError(2);
                else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              }
              #if CYTHON_COMPILING_IN_CPYTHON
              if (likely(PyTuple_CheckExact(sequence))) {
                __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
                __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
              } else {
                __pyx_t_4 = PyList_GET_ITEM(sequence, 0);
                __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
              }
              __Pyx_INCREF(__pyx_t_4);
              __Pyx_INCREF(__pyx_t_3);
              #else
              __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_4);
              __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_3);
              #endif
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            } else {
              Py_ssize_t index = -1;
              __pyx_t_16 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __Pyx_GOTREF(__pyx_t_16);
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __pyx_t_5 = Py_TYPE(__pyx_t_16)->tp_iternext;
              index = 0; __pyx_t_4 = __pyx_t_5(__pyx_t_16); if (unlikely(!__pyx_t_4)) goto __pyx_L25_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_4);
              index = 1; __pyx_t_3 = __pyx_t_5(__pyx_t_16); if (unlikely(!__pyx_t_3)) goto __pyx_L25_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_3);
              if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_16), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __pyx_t_5 = NULL;
              __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
              goto __pyx_L26_unpacking_done;
              __pyx_L25_unpacking_failed:;
              __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
              __pyx_t_5 = NULL;
              if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 666; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
              __pyx_L26_unpacking_done:;
            }
            __Pyx_XDECREF_SET(__pyx_v_dtype, __pyx_t_4);
            __pyx_t_4 = 0;
            __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_3);
            __pyx_t_3 = 0;
            goto __pyx_L24;
          }
          /*else*/ {

     667:             else:

     668:                 dtype = 'infer'

            /* "pandas/internals.pyx":668
     *                 dtype, _ = _infer_dtype_from_scalar(value)
     *             else:
     *                 dtype = 'infer'             # <<<<<<<<<<<<<<
     *             values = self._try_coerce_result(values)
     *             values = self._try_cast_result(values, dtype)
     */
            __Pyx_INCREF(__pyx_n_s_infer);
            __Pyx_XDECREF_SET(__pyx_v_dtype, __pyx_n_s_infer);
          }
          __pyx_L24:;

     669:             values = self._try_coerce_result(values)

          /* "pandas/internals.pyx":669
     *             else:
     *                 dtype = 'infer'
     *             values = self._try_coerce_result(values)             # <<<<<<<<<<<<<<
     *             values = self._try_cast_result(values, dtype)
     *             return [make_block(transf(values), self.items, self.ref_items,
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_coerce_result); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 669; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 669; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
          __Pyx_GIVEREF(__pyx_v_values);
          __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 669; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_4);
          __pyx_t_4 = 0;

     670:             values = self._try_cast_result(values, dtype)

          /* "pandas/internals.pyx":670
     *                 dtype = 'infer'
     *             values = self._try_coerce_result(values)
     *             values = self._try_cast_result(values, dtype)             # <<<<<<<<<<<<<<
     *             return [make_block(transf(values), self.items, self.ref_items,
     *                                ndim=self.ndim, fastpath=True)]
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_cast_result); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 670; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 670; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
          __Pyx_GIVEREF(__pyx_v_values);
          __Pyx_INCREF(__pyx_v_dtype);
          PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_dtype);
          __Pyx_GIVEREF(__pyx_v_dtype);
          __pyx_t_2 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 670; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_2);
          __pyx_t_2 = 0;

     671:             return [make_block(transf(values), self.items, self.ref_items,

          /* "pandas/internals.pyx":671
     *             values = self._try_coerce_result(values)
     *             values = self._try_cast_result(values, dtype)
     *             return [make_block(transf(values), self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                                ndim=self.ndim, fastpath=True)]
     *         except (ValueError, TypeError) as detail:
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
          __Pyx_GIVEREF(__pyx_v_values);
          __pyx_t_4 = PyObject_Call(__pyx_v_transf, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_16);
          __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_16);
          __Pyx_GIVEREF(__pyx_t_16);
          __pyx_t_4 = 0;
          __pyx_t_3 = 0;
          __pyx_t_16 = 0;
          __pyx_t_16 = PyDict_New(); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_16);

          /* "pandas/internals.pyx":671
     *             values = self._try_coerce_result(values)
     *             values = self._try_cast_result(values, dtype)
     *             return [make_block(transf(values), self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                                ndim=self.ndim, fastpath=True)]
     *         except (ValueError, TypeError) as detail:
     */
          __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, __pyx_t_16); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          __pyx_t_16 = PyList_New(1); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_16);
          PyList_SET_ITEM(__pyx_t_16, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_r = __pyx_t_16;
          __pyx_t_16 = 0;
          goto __pyx_L17_try_return;
        }
        __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
        __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
        __Pyx_XDECREF(__pyx_t_14); __pyx_t_14 = 0;
        goto __pyx_L20_try_end;
        __pyx_L13_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;

     672:                                ndim=self.ndim, fastpath=True)]

          /* "pandas/internals.pyx":672
     *             values = self._try_cast_result(values, dtype)
     *             return [make_block(transf(values), self.items, self.ref_items,
     *                                ndim=self.ndim, fastpath=True)]             # <<<<<<<<<<<<<<
     *         except (ValueError, TypeError) as detail:
     *             raise
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 672; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (PyDict_SetItem(__pyx_t_16, __pyx_n_s_ndim, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          if (PyDict_SetItem(__pyx_t_16, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 671; __pyx_clineno = __LINE__; goto __pyx_L13_error;}

     673:         except (ValueError, TypeError) as detail:

        /* "pandas/internals.pyx":673
     *             return [make_block(transf(values), self.items, self.ref_items,
     *                                ndim=self.ndim, fastpath=True)]
     *         except (ValueError, TypeError) as detail:             # <<<<<<<<<<<<<<
     *             raise
     *         except Exception as detail:
     */
        __pyx_t_18 = PyErr_ExceptionMatches(__pyx_builtin_ValueError) || PyErr_ExceptionMatches(__pyx_builtin_TypeError);
        if (__pyx_t_18) {
          __Pyx_AddTraceback("pandas.internals.Block.setitem", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_16, &__pyx_t_3, &__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 673; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_16);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_3);
          __pyx_v_detail = __pyx_t_3;

     674:             raise

          /* "pandas/internals.pyx":674
     *                                ndim=self.ndim, fastpath=True)]
     *         except (ValueError, TypeError) as detail:
     *             raise             # <<<<<<<<<<<<<<
     *         except Exception as detail:
     *             pass
     */
          __Pyx_GIVEREF(__pyx_t_16);
          __Pyx_GIVEREF(__pyx_t_3);
          __Pyx_XGIVEREF(__pyx_t_1);
          __Pyx_ErrRestore(__pyx_t_16, __pyx_t_3, __pyx_t_1);
          __pyx_t_16 = 0; __pyx_t_3 = 0; __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 674; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L14_exception_handled;
        }

     675:         except Exception as detail:

        /* "pandas/internals.pyx":675
     *         except (ValueError, TypeError) as detail:
     *             raise
     *         except Exception as detail:             # <<<<<<<<<<<<<<
     *             pass
     *
     */
        __pyx_t_18 = PyErr_ExceptionMatches(__pyx_builtin_Exception);
        if (__pyx_t_18) {
          __Pyx_AddTraceback("pandas.internals.Block.setitem", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_3, &__pyx_t_16) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 675; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_16);
          __Pyx_INCREF(__pyx_t_3);
          __pyx_v_detail = __pyx_t_3;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          goto __pyx_L14_exception_handled;
        }
        goto __pyx_L15_except_error;
        __pyx_L15_except_error:;
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
        goto __pyx_L1_error;
        __pyx_L17_try_return:;
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
        goto __pyx_L0;
        __pyx_L14_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_12);
        __Pyx_XGIVEREF(__pyx_t_13);
        __Pyx_XGIVEREF(__pyx_t_14);
        __Pyx_ExceptionReset(__pyx_t_12, __pyx_t_13, __pyx_t_14);
        __pyx_L20_try_end:;
      }

     676:             pass

     677:

     678:         return [self]

      /* "pandas/internals.pyx":678
     *             pass
     *
     *         return [self]             # <<<<<<<<<<<<<<
     *
     *     def putmask(self, mask, new, align=True, inplace=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_16 = PyList_New(1); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_16);
      __Pyx_INCREF(__pyx_v_self);
      PyList_SET_ITEM(__pyx_t_16, 0, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __pyx_r = __pyx_t_16;
      __pyx_t_16 = 0;
      goto __pyx_L0;

     679:

     680:     def putmask(self, mask, new, align=True, inplace=False):

    /* "pandas/internals.pyx":680
     *         return [self]
     *
     *     def putmask(self, mask, new, align=True, inplace=False):             # <<<<<<<<<<<<<<
     *         """ putmask the data to the block; it is possible that we may create a
     *         new dtype of block
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_100putmask(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_99putmask[] = " putmask the data to the block; it is possible that we may create a\n        new dtype of block\n\n        return the resulting block(s)\n\n        Parameters\n        ----------\n        mask  : the condition to respect\n        new : a ndarray/object\n        align : boolean, perform alignment on other/cond, default is True\n        inplace : perform inplace modification, default is False\n\n        Returns\n        -------\n        a new block(s), the result of the putmask\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_100putmask = {__Pyx_NAMESTR("putmask"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_100putmask, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_99putmask)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_100putmask(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_mask = 0;
      PyObject *__pyx_v_new = 0;
      PyObject *__pyx_v_align = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("putmask (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_mask,&__pyx_n_s_new,&__pyx_n_s_align,&__pyx_n_s_inplace,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mask)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("putmask", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("putmask", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_align);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "putmask") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_mask = values[1];
        __pyx_v_new = values[2];
        __pyx_v_align = values[3];
        __pyx_v_inplace = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("putmask", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.putmask", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_99putmask(__pyx_self, __pyx_v_self, __pyx_v_mask, __pyx_v_new, __pyx_v_align, __pyx_v_inplace);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":680
     *         return [self]
     *
     *     def putmask(self, mask, new, align=True, inplace=False):             # <<<<<<<<<<<<<<
     *         """ putmask the data to the block; it is possible that we may create a
     *         new dtype of block
     */

    static PyObject *__pyx_pf_6pandas_9internals_5Block_99putmask(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_mask, PyObject *__pyx_v_new, PyObject *__pyx_v_align, PyObject *__pyx_v_inplace) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_1_putmask *__pyx_cur_scope;
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_axis = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_create_block = 0;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_v_v = NULL;
      PyObject *__pyx_v_n = NULL;
      PyObject *__pyx_v_dtype = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_nv = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("putmask", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_1_putmask *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_1_putmask(__pyx_ptype_6pandas_9internals___pyx_scope_struct_1_putmask, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
      __pyx_cur_scope->__pyx_v_mask = __pyx_v_mask;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_mask);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_mask);
      __Pyx_INCREF(__pyx_v_new);

      /* "pandas/internals.pyx":680
     *         return [self]
     *
     *     def putmask(self, mask, new, align=True, inplace=False):             # <<<<<<<<<<<<<<
     *         """ putmask the data to the block; it is possible that we may create a
     *         new dtype of block
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.Block.putmask", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_axis);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_create_block);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XDECREF(__pyx_v_n);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_nv);
      __Pyx_XDECREF(__pyx_v_new);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":680
     *         return [self]
     *
     *     def putmask(self, mask, new, align=True, inplace=False):             # <<<<<<<<<<<<<<
     *         """ putmask the data to the block; it is possible that we may create a
     *         new dtype of block
     */
      __pyx_tuple__266 = PyTuple_Pack(19, __pyx_n_s_self, __pyx_n_s_mask, __pyx_n_s_new, __pyx_n_s_align, __pyx_n_s_inplace, __pyx_n_s_new_values, __pyx_n_s_axis, __pyx_n_s_new_blocks, __pyx_n_s_create_block, __pyx_n_s_create_block, __pyx_n_s_i, __pyx_n_s_item, __pyx_n_s_m, __pyx_n_s_v, __pyx_n_s_n, __pyx_n_s_dtype, __pyx_n_s__10, __pyx_n_s_block, __pyx_n_s_nv); if (unlikely(!__pyx_tuple__266)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__266);
      __Pyx_GIVEREF(__pyx_tuple__266);
      __pyx_codeobj__267 = (PyObject*)__Pyx_PyCode_New(5, 0, 19, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__266, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_putmask, 680, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__267)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":680
     *         return [self]
     *
     *     def putmask(self, mask, new, align=True, inplace=False):             # <<<<<<<<<<<<<<
     *         """ putmask the data to the block; it is possible that we may create a
     *         new dtype of block
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_100putmask, 0, __pyx_n_s_Block_putmask, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__267)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__268);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_putmask, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__268 = PyTuple_Pack(2, ((PyObject *)Py_True), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__268)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__268);
      __Pyx_GIVEREF(__pyx_tuple__268);

    /* "pandas/internals.pyx":680
     *         return [self]
     *
     *     def putmask(self, mask, new, align=True, inplace=False):             # <<<<<<<<<<<<<<
     *         """ putmask the data to the block; it is possible that we may create a
     *         new dtype of block
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_1_putmask {
      PyObject_HEAD
      PyObject *__pyx_v_mask;
      PyObject *__pyx_v_self;
    };

     681:         """ putmask the data to the block; it is possible that we may create a

     682:         new dtype of block

     683:

     684:         return the resulting block(s)

     685:

     686:         Parameters

     687:         ----------

     688:         mask  : the condition to respect

     689:         new : a ndarray/object

     690:         align : boolean, perform alignment on other/cond, default is True

     691:         inplace : perform inplace modification, default is False

     692:

     693:         Returns

     694:         -------

     695:         a new block(s), the result of the putmask

     696:         """

     697:

     698:         new_values = self.values if inplace else self.values.copy()

      /* "pandas/internals.pyx":698
     *         """
     *
     *         new_values = self.values if inplace else self.values.copy()             # <<<<<<<<<<<<<<
     *
     *         # may need to align the new
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      } else {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_v_new_values = __pyx_t_1;
      __pyx_t_1 = 0;

     699:

     700:         # may need to align the new

     701:         if hasattr(new, 'reindex_axis'):

      /* "pandas/internals.pyx":701
     *
     *         # may need to align the new
     *         if hasattr(new, 'reindex_axis'):             # <<<<<<<<<<<<<<
     *             if align:
     *                 axis = getattr(new, '_info_axis_number', 0)
     */
      __pyx_t_2 = PyObject_HasAttr(__pyx_v_new, __pyx_n_s_reindex_axis); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 701; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = (__pyx_t_2 != 0);
      if (__pyx_t_5) {

     702:             if align:

        /* "pandas/internals.pyx":702
     *         # may need to align the new
     *         if hasattr(new, 'reindex_axis'):
     *             if align:             # <<<<<<<<<<<<<<
     *                 axis = getattr(new, '_info_axis_number', 0)
     *                 new = new.reindex_axis(self.items, axis=axis,
     */
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_align); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_5) {

     703:                 axis = getattr(new, '_info_axis_number', 0)

          /* "pandas/internals.pyx":703
     *         if hasattr(new, 'reindex_axis'):
     *             if align:
     *                 axis = getattr(new, '_info_axis_number', 0)             # <<<<<<<<<<<<<<
     *                 new = new.reindex_axis(self.items, axis=axis,
     *                                        copy=False).values.T
     */
          __pyx_t_1 = __Pyx_GetAttr3(__pyx_v_new, __pyx_n_s_info_axis_number, __pyx_int_0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_v_axis = __pyx_t_1;
          __pyx_t_1 = 0;

     704:                 new = new.reindex_axis(self.items, axis=axis,

          /* "pandas/internals.pyx":704
     *             if align:
     *                 axis = getattr(new, '_info_axis_number', 0)
     *                 new = new.reindex_axis(self.items, axis=axis,             # <<<<<<<<<<<<<<
     *                                        copy=False).values.T
     *             else:
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_new, __pyx_n_s_reindex_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":704
     *             if align:
     *                 axis = getattr(new, '_info_axis_number', 0)
     *                 new = new.reindex_axis(self.items, axis=axis,             # <<<<<<<<<<<<<<
     *                                        copy=False).values.T
     *             else:
     */
          __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     705:                                        copy=False).values.T

          /* "pandas/internals.pyx":705
     *                 axis = getattr(new, '_info_axis_number', 0)
     *                 new = new.reindex_axis(self.items, axis=axis,
     *                                        copy=False).values.T             # <<<<<<<<<<<<<<
     *             else:
     *                 new = new.values.T
     */
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_copy, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":705
     *                 axis = getattr(new, '_info_axis_number', 0)
     *                 new = new.reindex_axis(self.items, axis=axis,
     *                                        copy=False).values.T             # <<<<<<<<<<<<<<
     *             else:
     *                 new = new.values.T
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 705; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_T); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 705; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_new, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L4;
        }
        /*else*/ {

     706:             else:

     707:                 new = new.values.T

          /* "pandas/internals.pyx":707
     *                                        copy=False).values.T
     *             else:
     *                 new = new.values.T             # <<<<<<<<<<<<<<
     *
     *         # may need to align the mask
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_new, __pyx_n_s_values); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_T); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF_SET(__pyx_v_new, __pyx_t_3);
          __pyx_t_3 = 0;
        }
        __pyx_L4:;
        goto __pyx_L3;
      }
      __pyx_L3:;

     708:

     709:         # may need to align the mask

     710:         if hasattr(mask, 'reindex_axis'):

      /* "pandas/internals.pyx":710
     *
     *         # may need to align the mask
     *         if hasattr(mask, 'reindex_axis'):             # <<<<<<<<<<<<<<
     *             if align:
     *                 axis = getattr(mask, '_info_axis_number', 0)
     */
      __pyx_t_3 = __pyx_cur_scope->__pyx_v_mask;
      __Pyx_INCREF(__pyx_t_3);
      __pyx_t_5 = PyObject_HasAttr(__pyx_t_3, __pyx_n_s_reindex_axis); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = (__pyx_t_5 != 0);
      if (__pyx_t_2) {

     711:             if align:

        /* "pandas/internals.pyx":711
     *         # may need to align the mask
     *         if hasattr(mask, 'reindex_axis'):
     *             if align:             # <<<<<<<<<<<<<<
     *                 axis = getattr(mask, '_info_axis_number', 0)
     *                 mask = mask.reindex_axis(
     */
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_align); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 711; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_2) {

     712:                 axis = getattr(mask, '_info_axis_number', 0)

          /* "pandas/internals.pyx":712
     *         if hasattr(mask, 'reindex_axis'):
     *             if align:
     *                 axis = getattr(mask, '_info_axis_number', 0)             # <<<<<<<<<<<<<<
     *                 mask = mask.reindex_axis(
     *                     self.items, axis=axis, copy=False).values.T
     */
          __pyx_t_3 = __pyx_cur_scope->__pyx_v_mask;
          __Pyx_INCREF(__pyx_t_3);
          __pyx_t_6 = __Pyx_GetAttr3(__pyx_t_3, __pyx_n_s_info_axis_number, __pyx_int_0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 712; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_XDECREF_SET(__pyx_v_axis, __pyx_t_6);
          __pyx_t_6 = 0;

     713:                 mask = mask.reindex_axis(

          /* "pandas/internals.pyx":713
     *             if align:
     *                 axis = getattr(mask, '_info_axis_number', 0)
     *                 mask = mask.reindex_axis(             # <<<<<<<<<<<<<<
     *                     self.items, axis=axis, copy=False).values.T
     *             else:
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_mask, __pyx_n_s_reindex_axis); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);

          /* "pandas/internals.pyx":713
     *             if align:
     *                 axis = getattr(mask, '_info_axis_number', 0)
     *                 mask = mask.reindex_axis(             # <<<<<<<<<<<<<<
     *                     self.items, axis=axis, copy=False).values.T
     *             else:
     */
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);

          /* "pandas/internals.pyx":713
     *             if align:
     *                 axis = getattr(mask, '_info_axis_number', 0)
     *                 mask = mask.reindex_axis(             # <<<<<<<<<<<<<<
     *                     self.items, axis=axis, copy=False).values.T
     *             else:
     */
          __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     714:                     self.items, axis=axis, copy=False).values.T

          /* "pandas/internals.pyx":714
     *                 axis = getattr(mask, '_info_axis_number', 0)
     *                 mask = mask.reindex_axis(
     *                     self.items, axis=axis, copy=False).values.T             # <<<<<<<<<<<<<<
     *             else:
     *                 mask = mask.values.T
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);

          /* "pandas/internals.pyx":714
     *                 axis = getattr(mask, '_info_axis_number', 0)
     *                 mask = mask.reindex_axis(
     *                     self.items, axis=axis, copy=False).values.T             # <<<<<<<<<<<<<<
     *             else:
     *                 mask = mask.values.T
     */
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_copy, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":714
     *                 axis = getattr(mask, '_info_axis_number', 0)
     *                 mask = mask.reindex_axis(
     *                     self.items, axis=axis, copy=False).values.T             # <<<<<<<<<<<<<<
     *             else:
     *                 mask = mask.values.T
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_T); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 714; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_mask);
          __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_mask, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          goto __pyx_L6;
        }
        /*else*/ {

     715:             else:

     716:                 mask = mask.values.T

          /* "pandas/internals.pyx":716
     *                     self.items, axis=axis, copy=False).values.T
     *             else:
     *                 mask = mask.values.T             # <<<<<<<<<<<<<<
     *
     *         # if we are passed a scalar None, convert it here
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_mask, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_T); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 716; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_mask);
          __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_mask, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
        }
        __pyx_L6:;
        goto __pyx_L5;
      }
      __pyx_L5:;

     717:

     718:         # if we are passed a scalar None, convert it here

     719:         if not is_list_like(new) and isnull(new):

      /* "pandas/internals.pyx":719
     *
     *         # if we are passed a scalar None, convert it here
     *         if not is_list_like(new) and isnull(new):             # <<<<<<<<<<<<<<
     *             new = self.fill_value
     *
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_new);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new);
      __Pyx_GIVEREF(__pyx_v_new);
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_5 = (!__pyx_t_2);
      if (__pyx_t_5) {
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_new);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new);
        __Pyx_GIVEREF(__pyx_v_new);
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_7 = __pyx_t_2;
      } else {
        __pyx_t_7 = __pyx_t_5;
      }
      if (__pyx_t_7) {

     720:             new = self.fill_value

        /* "pandas/internals.pyx":720
     *         # if we are passed a scalar None, convert it here
     *         if not is_list_like(new) and isnull(new):
     *             new = self.fill_value             # <<<<<<<<<<<<<<
     *
     *         if self._can_hold_element(new):
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 720; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_new, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L7;
      }
      __pyx_L7:;

     721:

     722:         if self._can_hold_element(new):

      /* "pandas/internals.pyx":722
     *             new = self.fill_value
     *
     *         if self._can_hold_element(new):             # <<<<<<<<<<<<<<
     *             new = self._try_cast(new)
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_can_hold_element); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_new);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new);
      __Pyx_GIVEREF(__pyx_v_new);
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_7) {

     723:             new = self._try_cast(new)

        /* "pandas/internals.pyx":723
     *
     *         if self._can_hold_element(new):
     *             new = self._try_cast(new)             # <<<<<<<<<<<<<<
     *
     *             # pseudo-broadcast
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_cast); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_new);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new);
        __Pyx_GIVEREF(__pyx_v_new);
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_new, __pyx_t_3);
        __pyx_t_3 = 0;

     724:

     725:             # pseudo-broadcast

     726:             if isinstance(new, np.ndarray) and new.ndim == self.ndim - 1:

        /* "pandas/internals.pyx":726
     *
     *             # pseudo-broadcast
     *             if isinstance(new, np.ndarray) and new.ndim == self.ndim - 1:             # <<<<<<<<<<<<<<
     *                 new = np.repeat(new, self.shape[-1]).reshape(self.shape)
     *
     */
        __pyx_t_7 = __Pyx_TypeCheck(__pyx_v_new, ((PyObject*)__pyx_ptype_5numpy_ndarray));
        if (__pyx_t_7) {
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_new, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = PyNumber_Subtract(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_2 = __pyx_t_5;
        } else {
          __pyx_t_2 = __pyx_t_7;
        }
        if (__pyx_t_2) {

     727:                 new = np.repeat(new, self.shape[-1]).reshape(self.shape)

          /* "pandas/internals.pyx":727
     *             # pseudo-broadcast
     *             if isinstance(new, np.ndarray) and new.ndim == self.ndim - 1:
     *                 new = np.repeat(new, self.shape[-1]).reshape(self.shape)             # <<<<<<<<<<<<<<
     *
     *             np.putmask(new_values, mask, new)
     */
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_repeat); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_1, -1, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_new);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new);
          __Pyx_GIVEREF(__pyx_v_new);
          PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reshape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF_SET(__pyx_v_new, __pyx_t_3);
          __pyx_t_3 = 0;
          goto __pyx_L9;
        }
        __pyx_L9:;

     728:

     729:             np.putmask(new_values, mask, new)

        /* "pandas/internals.pyx":729
     *                 new = np.repeat(new, self.shape[-1]).reshape(self.shape)
     *
     *             np.putmask(new_values, mask, new)             # <<<<<<<<<<<<<<
     *
     *         # maybe upcast me
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_putmask); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_new_values);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_values);
        __Pyx_GIVEREF(__pyx_v_new_values);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_mask);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_cur_scope->__pyx_v_mask);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_mask);
        __Pyx_INCREF(__pyx_v_new);
        PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_new);
        __Pyx_GIVEREF(__pyx_v_new);
        __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        goto __pyx_L8;
      }

     730:

     731:         # maybe upcast me

     732:         elif mask.any():

      /* "pandas/internals.pyx":732
     *
     *         # maybe upcast me
     *         elif mask.any():             # <<<<<<<<<<<<<<
     *
     *             # need to go column by column
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_mask, __pyx_n_s_any); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 732; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 732; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 732; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_2) {

     733:

     734:             # need to go column by column

     735:             new_blocks = []

        /* "pandas/internals.pyx":735
     *
     *             # need to go column by column
     *             new_blocks = []             # <<<<<<<<<<<<<<
     *
     *             def create_block(v, m, n, item, reshape=True):
     */
        __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 735; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_v_new_blocks = ((PyObject*)__pyx_t_3);
        __pyx_t_3 = 0;

     736:

     737:             def create_block(v, m, n, item, reshape=True):

    /* "pandas/internals.pyx":737
     *             new_blocks = []
     *
     *             def create_block(v, m, n, item, reshape=True):             # <<<<<<<<<<<<<<
     *                 """ return a new block, try to preserve dtype if possible """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7putmask_1create_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_7putmask_create_block[] = " return a new block, try to preserve dtype if possible ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_7putmask_1create_block = {__Pyx_NAMESTR("create_block"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_7putmask_1create_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_7putmask_create_block)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_7putmask_1create_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_v = 0;
      PyObject *__pyx_v_m = 0;
      PyObject *__pyx_v_n = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_reshape = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("create_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_v,&__pyx_n_s_m,&__pyx_n_s_n,&__pyx_n_s_item,&__pyx_n_s_reshape,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_m)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("create_block", 0, 4, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_n)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("create_block", 0, 4, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("create_block", 0, 4, 5, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_reshape);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_v = values[0];
        __pyx_v_m = values[1];
        __pyx_v_n = values[2];
        __pyx_v_item = values[3];
        __pyx_v_reshape = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("create_block", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.putmask.create_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_7putmask_create_block(__pyx_self, __pyx_v_v, __pyx_v_m, __pyx_v_n, __pyx_v_item, __pyx_v_reshape);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_7putmask_create_block(PyObject *__pyx_self, PyObject *__pyx_v_v, PyObject *__pyx_v_m, PyObject *__pyx_v_n, PyObject *__pyx_v_item, PyObject *__pyx_v_reshape) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_1_putmask *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_1_putmask *__pyx_outer_scope;
      PyObject *__pyx_v_nv = NULL;
      PyObject *__pyx_v_nn = NULL;
      PyObject *__pyx_v_nn_at = NULL;
      PyObject *__pyx_v_dtype = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("create_block", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_1_putmask *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;
      __Pyx_INCREF(__pyx_v_n);

      /* "pandas/internals.pyx":737
     *             new_blocks = []
     *
     *             def create_block(v, m, n, item, reshape=True):             # <<<<<<<<<<<<<<
     *                 """ return a new block, try to preserve dtype if possible """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.Block.putmask.create_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_nv);
      __Pyx_XDECREF(__pyx_v_nn);
      __Pyx_XDECREF(__pyx_v_nn_at);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XDECREF(__pyx_v_n);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":737
     *             new_blocks = []
     *
     *             def create_block(v, m, n, item, reshape=True):             # <<<<<<<<<<<<<<
     *                 """ return a new block, try to preserve dtype if possible """
     *
     */
      __pyx_tuple__11 = PyTuple_Pack(10, __pyx_n_s_v, __pyx_n_s_m, __pyx_n_s_n, __pyx_n_s_item, __pyx_n_s_reshape, __pyx_n_s_nv, __pyx_n_s_nn, __pyx_n_s_nn_at, __pyx_n_s_dtype, __pyx_n_s__10); if (unlikely(!__pyx_tuple__11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__11);
      __Pyx_GIVEREF(__pyx_tuple__11);
      __pyx_codeobj__12 = (PyObject*)__Pyx_PyCode_New(5, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__11, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_create_block, 737, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":737
     *             new_blocks = []
     *
     *             def create_block(v, m, n, item, reshape=True):             # <<<<<<<<<<<<<<
     *                 """ return a new block, try to preserve dtype if possible """
     *
     */
        __pyx_t_3 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_7putmask_1create_block, 0, __pyx_n_s_Block_putmask_locals_create_bloc, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__12)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_3, __pyx_tuple__13);
        __pyx_v_create_block = __pyx_t_3;
        __pyx_t_3 = 0;
      __pyx_tuple__13 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__13);
      __Pyx_GIVEREF(__pyx_tuple__13);

     738:                 """ return a new block, try to preserve dtype if possible """

     739:

     740:                 # n should the length of the mask or a scalar here

     741:                 if not is_list_like(n):

      /* "pandas/internals.pyx":741
     *
     *                 # n should the length of the mask or a scalar here
     *                 if not is_list_like(n):             # <<<<<<<<<<<<<<
     *                     n = np.array([n] * len(m))
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_n);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_n);
      __Pyx_GIVEREF(__pyx_v_n);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {

     742:                     n = np.array([n] * len(m))

        /* "pandas/internals.pyx":742
     *                 # n should the length of the mask or a scalar here
     *                 if not is_list_like(n):
     *                     n = np.array([n] * len(m))             # <<<<<<<<<<<<<<
     *
     *                 # see if we are only masking values that if putted
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_6 = PyObject_Length(__pyx_v_m); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyList_New(1 * ((__pyx_t_6<0) ? 0:__pyx_t_6)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        { Py_ssize_t __pyx_temp;
          for (__pyx_temp=0; __pyx_temp < __pyx_t_6; __pyx_temp++) {
            __Pyx_INCREF(__pyx_v_n);
            PyList_SET_ITEM(__pyx_t_3, __pyx_temp, __pyx_v_n);
            __Pyx_GIVEREF(__pyx_v_n);
          }
        }
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_n, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     743:

     744:                 # see if we are only masking values that if putted

     745:                 # will work in the current dtype

     746:                 nv = None

      /* "pandas/internals.pyx":746
     *                 # see if we are only masking values that if putted
     *                 # will work in the current dtype
     *                 nv = None             # <<<<<<<<<<<<<<
     *                 try:
     *                     nn = n[m]
     */
      __Pyx_INCREF(Py_None);
      __pyx_v_nv = Py_None;

     747:                 try:

      /* "pandas/internals.pyx":747
     *                 # will work in the current dtype
     *                 nv = None
     *                 try:             # <<<<<<<<<<<<<<
     *                     nn = n[m]
     *                     nn_at = nn.astype(self.dtype)
     */
      {
        /*try:*/ {

     748:                     nn = n[m]

          /* "pandas/internals.pyx":748
     *                 nv = None
     *                 try:
     *                     nn = n[m]             # <<<<<<<<<<<<<<
     *                     nn_at = nn.astype(self.dtype)
     *                     if (nn == nn_at).all():
     */
          __pyx_t_3 = PyObject_GetItem(__pyx_v_n, __pyx_v_m); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 748; __pyx_clineno = __LINE__; goto __pyx_L4_error;};
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_v_nn = __pyx_t_3;
          __pyx_t_3 = 0;

     749:                     nn_at = nn.astype(self.dtype)

          /* "pandas/internals.pyx":749
     *                 try:
     *                     nn = n[m]
     *                     nn_at = nn.astype(self.dtype)             # <<<<<<<<<<<<<<
     *                     if (nn == nn_at).all():
     *                         nv = v.copy()
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_nn, __pyx_n_s_astype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 749; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (unlikely(!__pyx_cur_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 749; __pyx_clineno = __LINE__; goto __pyx_L4_error;} }
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 749; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 749; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 749; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_v_nn_at = __pyx_t_1;
          __pyx_t_1 = 0;

     750:                     if (nn == nn_at).all():

          /* "pandas/internals.pyx":750
     *                     nn = n[m]
     *                     nn_at = nn.astype(self.dtype)
     *                     if (nn == nn_at).all():             # <<<<<<<<<<<<<<
     *                         nv = v.copy()
     *                         nv[mask] = nn_at
     */
          __pyx_t_1 = PyObject_RichCompare(__pyx_v_nn, __pyx_v_nn_at, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_all); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 750; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          if (__pyx_t_5) {

     751:                         nv = v.copy()

            /* "pandas/internals.pyx":751
     *                     nn_at = nn.astype(self.dtype)
     *                     if (nn == nn_at).all():
     *                         nv = v.copy()             # <<<<<<<<<<<<<<
     *                         nv[mask] = nn_at
     *                 except:
     */
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_copy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 751; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF_SET(__pyx_v_nv, __pyx_t_2);
            __pyx_t_2 = 0;

     752:                         nv[mask] = nn_at

            /* "pandas/internals.pyx":752
     *                     if (nn == nn_at).all():
     *                         nv = v.copy()
     *                         nv[mask] = nn_at             # <<<<<<<<<<<<<<
     *                 except:
     *                     pass
     */
            if (unlikely(!__pyx_cur_scope->__pyx_v_mask)) { __Pyx_RaiseClosureNameError("mask"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L4_error;} }
            if (unlikely(PyObject_SetItem(__pyx_v_nv, __pyx_cur_scope->__pyx_v_mask, __pyx_v_nn_at) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 752; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            goto __pyx_L12;
          }
          __pyx_L12:;
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L11_try_end;
        __pyx_L4_error:;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;

     753:                 except:

        /* "pandas/internals.pyx":753
     *                         nv = v.copy()
     *                         nv[mask] = nn_at
     *                 except:             # <<<<<<<<<<<<<<
     *                     pass
     *
     */
        /*except:*/ {
          PyErr_Restore(0,0,0);
          goto __pyx_L5_exception_handled;
        }
        __pyx_L5_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L11_try_end:;
      }

     754:                     pass

     755:

     756:                 # change the dtype

     757:                 if nv is None:

      /* "pandas/internals.pyx":757
     *
     *                 # change the dtype
     *                 if nv is None:             # <<<<<<<<<<<<<<
     *                     dtype, _ = com._maybe_promote(n.dtype)
     *                     nv = v.astype(dtype)
     */
      __pyx_t_5 = (__pyx_v_nv == Py_None);
      __pyx_t_4 = (__pyx_t_5 != 0);
      if (__pyx_t_4) {

     758:                     dtype, _ = com._maybe_promote(n.dtype)

        /* "pandas/internals.pyx":758
     *                 # change the dtype
     *                 if nv is None:
     *                     dtype, _ = com._maybe_promote(n.dtype)             # <<<<<<<<<<<<<<
     *                     nv = v.astype(dtype)
     *                     try:
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_maybe_promote); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_n, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
          PyObject* sequence = __pyx_t_2;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_1);
          #else
          __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          #endif
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_10 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
          index = 0; __pyx_t_3 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_3)) goto __pyx_L14_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          index = 1; __pyx_t_1 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_1)) goto __pyx_L14_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_1);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_11 = NULL;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L15_unpacking_done;
          __pyx_L14_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_t_11 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L15_unpacking_done:;
        }
        __pyx_v_dtype = __pyx_t_3;
        __pyx_t_3 = 0;
        __pyx_v__ = __pyx_t_1;
        __pyx_t_1 = 0;

     759:                     nv = v.astype(dtype)

        /* "pandas/internals.pyx":759
     *                 if nv is None:
     *                     dtype, _ = com._maybe_promote(n.dtype)
     *                     nv = v.astype(dtype)             # <<<<<<<<<<<<<<
     *                     try:
     *                         nv[m] = n
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_astype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_dtype);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_dtype);
        __Pyx_GIVEREF(__pyx_v_dtype);
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_nv, __pyx_t_3);
        __pyx_t_3 = 0;

     760:                     try:

        /* "pandas/internals.pyx":760
     *                     dtype, _ = com._maybe_promote(n.dtype)
     *                     nv = v.astype(dtype)
     *                     try:             # <<<<<<<<<<<<<<
     *                         nv[m] = n
     *                     except:
     */
        {
          /*try:*/ {

     761:                         nv[m] = n

            /* "pandas/internals.pyx":761
     *                     nv = v.astype(dtype)
     *                     try:
     *                         nv[m] = n             # <<<<<<<<<<<<<<
     *                     except:
     *                         np.putmask(nv, m, n)
     */
            if (unlikely(PyObject_SetItem(__pyx_v_nv, __pyx_v_m, __pyx_v_n) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 761; __pyx_clineno = __LINE__; goto __pyx_L16_error;}
          }
          __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L23_try_end;
          __pyx_L16_error:;
          __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;

     762:                     except:

          /* "pandas/internals.pyx":762
     *                     try:
     *                         nv[m] = n
     *                     except:             # <<<<<<<<<<<<<<
     *                         np.putmask(nv, m, n)
     *
     */
          /*except:*/ {
            __Pyx_AddTraceback("pandas.internals.Block.putmask.create_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
            if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_1, &__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 762; __pyx_clineno = __LINE__; goto __pyx_L18_except_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_GOTREF(__pyx_t_2);

     763:                         np.putmask(nv, m, n)

            /* "pandas/internals.pyx":763
     *                         nv[m] = n
     *                     except:
     *                         np.putmask(nv, m, n)             # <<<<<<<<<<<<<<
     *
     *                 if reshape:
     */
            __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; __pyx_clineno = __LINE__; goto __pyx_L18_except_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_putmask); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; __pyx_clineno = __LINE__; goto __pyx_L18_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; __pyx_clineno = __LINE__; goto __pyx_L18_except_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_INCREF(__pyx_v_nv);
            PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_nv);
            __Pyx_GIVEREF(__pyx_v_nv);
            __Pyx_INCREF(__pyx_v_m);
            PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_m);
            __Pyx_GIVEREF(__pyx_v_m);
            __Pyx_INCREF(__pyx_v_n);
            PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_v_n);
            __Pyx_GIVEREF(__pyx_v_n);
            __pyx_t_13 = PyObject_Call(__pyx_t_12, __pyx_t_10, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 763; __pyx_clineno = __LINE__; goto __pyx_L18_except_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            goto __pyx_L17_exception_handled;
          }
          __pyx_L18_except_error:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_7);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
          goto __pyx_L1_error;
          __pyx_L17_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_8);
          __Pyx_XGIVEREF(__pyx_t_7);
          __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
          __pyx_L23_try_end:;
        }
        goto __pyx_L13;
      }
      __pyx_L13:;

     764:

     765:                 if reshape:

      /* "pandas/internals.pyx":765
     *                         np.putmask(nv, m, n)
     *
     *                 if reshape:             # <<<<<<<<<<<<<<
     *                     nv = _block_shape(nv)
     *                     return make_block(nv, [item], self.ref_items)
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_reshape); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 765; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {

     766:                     nv = _block_shape(nv)

        /* "pandas/internals.pyx":766
     *
     *                 if reshape:
     *                     nv = _block_shape(nv)             # <<<<<<<<<<<<<<
     *                     return make_block(nv, [item], self.ref_items)
     *                 else:
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 766; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 766; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_nv);
        __Pyx_GIVEREF(__pyx_v_nv);
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 766; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_nv, __pyx_t_3);
        __pyx_t_3 = 0;

     767:                     return make_block(nv, [item], self.ref_items)

        /* "pandas/internals.pyx":767
     *                 if reshape:
     *                     nv = _block_shape(nv)
     *                     return make_block(nv, [item], self.ref_items)             # <<<<<<<<<<<<<<
     *                 else:
     *                     return make_block(nv, item, self.ref_items)
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_item);
        PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        if (unlikely(!__pyx_cur_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_13);
        __Pyx_INCREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_v_nv);
        __Pyx_GIVEREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_13, 2, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_1 = 0;
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_13, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 767; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }
      /*else*/ {

     768:                 else:

     769:                     return make_block(nv, item, self.ref_items)

        /* "pandas/internals.pyx":769
     *                     return make_block(nv, [item], self.ref_items)
     *                 else:
     *                     return make_block(nv, item, self.ref_items)             # <<<<<<<<<<<<<<
     *
     *             if self.ndim > 1:
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (unlikely(!__pyx_cur_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_13);
        __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_nv);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_nv);
        __Pyx_GIVEREF(__pyx_v_nv);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_13);
        __Pyx_GIVEREF(__pyx_t_13);
        __pyx_t_13 = 0;
        __pyx_t_13 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_13);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_r = __pyx_t_13;
        __pyx_t_13 = 0;
        goto __pyx_L0;
      }

     770:

     771:             if self.ndim > 1:

        /* "pandas/internals.pyx":771
     *                     return make_block(nv, item, self.ref_items)
     *
     *             if self.ndim > 1:             # <<<<<<<<<<<<<<
     *                 for i, item in enumerate(self.items):
     *                     m = mask[i]
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_int_1, Py_GT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (__pyx_t_2) {

     772:                 for i, item in enumerate(self.items):

          /* "pandas/internals.pyx":772
     *
     *             if self.ndim > 1:
     *                 for i, item in enumerate(self.items):             # <<<<<<<<<<<<<<
     *                     m = mask[i]
     *                     v = new_values[i]
     */
          __Pyx_INCREF(__pyx_int_0);
          __pyx_t_1 = __pyx_int_0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
            __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); __pyx_t_8 = 0;
            __pyx_t_9 = NULL;
          } else {
            __pyx_t_8 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_9 = Py_TYPE(__pyx_t_4)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          for (;;) {
            if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_4)) {
              if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_4)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_8); __Pyx_INCREF(__pyx_t_3); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_4)) {
              if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_8); __Pyx_INCREF(__pyx_t_3); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_3 = __pyx_t_9(__pyx_t_4);
              if (unlikely(!__pyx_t_3)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_3);
            }
            __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_3);
            __pyx_t_3 = 0;
            __Pyx_INCREF(__pyx_t_1);
            __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
            __pyx_t_3 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_1);
            __pyx_t_1 = __pyx_t_3;
            __pyx_t_3 = 0;

     773:                     m = mask[i]

            /* "pandas/internals.pyx":773
     *             if self.ndim > 1:
     *                 for i, item in enumerate(self.items):
     *                     m = mask[i]             # <<<<<<<<<<<<<<
     *                     v = new_values[i]
     *
     */
            __pyx_t_3 = PyObject_GetItem(__pyx_cur_scope->__pyx_v_mask, __pyx_v_i); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 773; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_XDECREF_SET(__pyx_v_m, __pyx_t_3);
            __pyx_t_3 = 0;

     774:                     v = new_values[i]

            /* "pandas/internals.pyx":774
     *                 for i, item in enumerate(self.items):
     *                     m = mask[i]
     *                     v = new_values[i]             # <<<<<<<<<<<<<<
     *
     *                     # need a new block
     */
            __pyx_t_3 = PyObject_GetItem(__pyx_v_new_values, __pyx_v_i); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 774; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_3);
            __pyx_t_3 = 0;

     775:

     776:                     # need a new block

     777:                     if m.any():

            /* "pandas/internals.pyx":777
     *
     *                     # need a new block
     *                     if m.any():             # <<<<<<<<<<<<<<
     *
     *                         n = new[i] if isinstance(
     */
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_m, __pyx_n_s_any); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 777; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 777; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 777; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (__pyx_t_2) {

     778:

     779:                         n = new[i] if isinstance(

              /* "pandas/internals.pyx":779
     *                     if m.any():
     *
     *                         n = new[i] if isinstance(             # <<<<<<<<<<<<<<
     *                             new, np.ndarray) else np.array(new)
     *
     */
              if ((__pyx_t_2 != 0)) {
                __pyx_t_3 = PyObject_GetItem(__pyx_v_new, __pyx_v_i); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 779; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
                __Pyx_GOTREF(__pyx_t_3);
                __pyx_t_6 = __pyx_t_3;
                __pyx_t_3 = 0;
              } else {

     780:                             new, np.ndarray) else np.array(new)

              /* "pandas/internals.pyx":780
     *
     *                         n = new[i] if isinstance(
     *                             new, np.ndarray) else np.array(new)             # <<<<<<<<<<<<<<
     *
     *                         # type of the new block
     */
              __pyx_t_2 = __Pyx_TypeCheck(__pyx_v_new, ((PyObject*)__pyx_ptype_5numpy_ndarray));

                /* "pandas/internals.pyx":780
     *
     *                         n = new[i] if isinstance(
     *                             new, np.ndarray) else np.array(new)             # <<<<<<<<<<<<<<
     *
     *                         # type of the new block
     */
                __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_3);
                __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_10);
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_3);
                __Pyx_INCREF(__pyx_v_new);
                PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new);
                __Pyx_GIVEREF(__pyx_v_new);
                __pyx_t_11 = PyObject_Call(__pyx_t_10, __pyx_t_3, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_11);
                __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                __pyx_t_6 = __pyx_t_11;
                __pyx_t_11 = 0;
              }
              __Pyx_XDECREF_SET(__pyx_v_n, __pyx_t_6);
              __pyx_t_6 = 0;

     781:

     782:                         # type of the new block

     783:                         dtype, _ = com._maybe_promote(n.dtype)

              /* "pandas/internals.pyx":783
     *
     *                         # type of the new block
     *                         dtype, _ = com._maybe_promote(n.dtype)             # <<<<<<<<<<<<<<
     *
     *                         # we need to exiplicty astype here to make a copy
     */
              __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_maybe_promote); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_n, __pyx_n_s_dtype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6);
              __Pyx_GIVEREF(__pyx_t_6);
              __pyx_t_6 = 0;
              __pyx_t_6 = PyObject_Call(__pyx_t_11, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
                PyObject* sequence = __pyx_t_6;
                #if CYTHON_COMPILING_IN_CPYTHON
                Py_ssize_t size = Py_SIZE(sequence);
                #else
                Py_ssize_t size = PySequence_Size(sequence);
                #endif
                if (unlikely(size != 2)) {
                  if (size > 2) __Pyx_RaiseTooManyValuesError(2);
                  else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                  {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                #if CYTHON_COMPILING_IN_CPYTHON
                if (likely(PyTuple_CheckExact(sequence))) {
                  __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
                  __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
                } else {
                  __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
                  __pyx_t_11 = PyList_GET_ITEM(sequence, 1);
                }
                __Pyx_INCREF(__pyx_t_3);
                __Pyx_INCREF(__pyx_t_11);
                #else
                __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_3);
                __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_11);
                #endif
                __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              } else {
                Py_ssize_t index = -1;
                __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_10);
                __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
                __pyx_t_12 = Py_TYPE(__pyx_t_10)->tp_iternext;
                index = 0; __pyx_t_3 = __pyx_t_12(__pyx_t_10); if (unlikely(!__pyx_t_3)) goto __pyx_L14_unpacking_failed;
                __Pyx_GOTREF(__pyx_t_3);
                index = 1; __pyx_t_11 = __pyx_t_12(__pyx_t_10); if (unlikely(!__pyx_t_11)) goto __pyx_L14_unpacking_failed;
                __Pyx_GOTREF(__pyx_t_11);
                if (__Pyx_IternextUnpackEndCheck(__pyx_t_12(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __pyx_t_12 = NULL;
                __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
                goto __pyx_L15_unpacking_done;
                __pyx_L14_unpacking_failed:;
                __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
                __pyx_t_12 = NULL;
                if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __pyx_L15_unpacking_done:;
              }
              __Pyx_XDECREF_SET(__pyx_v_dtype, __pyx_t_3);
              __pyx_t_3 = 0;
              __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_11);
              __pyx_t_11 = 0;

     784:

     785:                         # we need to exiplicty astype here to make a copy

     786:                         n = n.astype(dtype)

              /* "pandas/internals.pyx":786
     *
     *                         # we need to exiplicty astype here to make a copy
     *                         n = n.astype(dtype)             # <<<<<<<<<<<<<<
     *
     *                         block = create_block(v, m, n, item)
     */
              __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_n, __pyx_n_s_astype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_INCREF(__pyx_v_dtype);
              PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_dtype);
              __Pyx_GIVEREF(__pyx_v_dtype);
              __pyx_t_3 = PyObject_Call(__pyx_t_6, __pyx_t_11, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 786; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_DECREF_SET(__pyx_v_n, __pyx_t_3);
              __pyx_t_3 = 0;

     787:

     788:                         block = create_block(v, m, n, item)

              /* "pandas/internals.pyx":788
     *                         n = n.astype(dtype)
     *
     *                         block = create_block(v, m, n, item)             # <<<<<<<<<<<<<<
     *
     *                     else:
     */
              __pyx_t_3 = PyTuple_New(4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 788; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __Pyx_INCREF(__pyx_v_v);
              PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_v);
              __Pyx_GIVEREF(__pyx_v_v);
              __Pyx_INCREF(__pyx_v_m);
              PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_m);
              __Pyx_GIVEREF(__pyx_v_m);
              __Pyx_INCREF(__pyx_v_n);
              PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_n);
              __Pyx_GIVEREF(__pyx_v_n);
              __Pyx_INCREF(__pyx_v_item);
              PyTuple_SET_ITEM(__pyx_t_3, 3, __pyx_v_item);
              __Pyx_GIVEREF(__pyx_v_item);
              __pyx_t_11 = PyObject_Call(__pyx_v_create_block, __pyx_t_3, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 788; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_11);
              __pyx_t_11 = 0;
              goto __pyx_L13;
            }
            /*else*/ {

     789:

     790:                     else:

     791:                         nv = v if inplace else v.copy()

              /* "pandas/internals.pyx":791
     *
     *                     else:
     *                         nv = v if inplace else v.copy()             # <<<<<<<<<<<<<<
     *                         nv = _block_shape(nv)
     *                         block = make_block(
     */
              __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              if (__pyx_t_2) {
                __Pyx_INCREF(__pyx_v_v);
                __pyx_t_11 = __pyx_v_v;
              } else {
                __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_copy); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_3);
                __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_6);
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                __pyx_t_11 = __pyx_t_6;
                __pyx_t_6 = 0;
              }
              __Pyx_XDECREF_SET(__pyx_v_nv, __pyx_t_11);
              __pyx_t_11 = 0;

     792:                         nv = _block_shape(nv)

              /* "pandas/internals.pyx":792
     *                     else:
     *                         nv = v if inplace else v.copy()
     *                         nv = _block_shape(nv)             # <<<<<<<<<<<<<<
     *                         block = make_block(
     *                             nv, Index([item]), self.ref_items, fastpath=True)
     */
              __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_INCREF(__pyx_v_nv);
              PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_nv);
              __Pyx_GIVEREF(__pyx_v_nv);
              __pyx_t_3 = PyObject_Call(__pyx_t_11, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 792; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __Pyx_DECREF_SET(__pyx_v_nv, __pyx_t_3);
              __pyx_t_3 = 0;

     793:                         block = make_block(

              /* "pandas/internals.pyx":793
     *                         nv = v if inplace else v.copy()
     *                         nv = _block_shape(nv)
     *                         block = make_block(             # <<<<<<<<<<<<<<
     *                             nv, Index([item]), self.ref_items, fastpath=True)
     *
     */
              __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);

              /* "pandas/internals.pyx":793
     *                         nv = v if inplace else v.copy()
     *                         nv = _block_shape(nv)
     *                         block = make_block(             # <<<<<<<<<<<<<<
     *                             nv, Index([item]), self.ref_items, fastpath=True)
     *
     */
              __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_INCREF(__pyx_v_nv);
              PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_nv);
              __Pyx_GIVEREF(__pyx_v_nv);
              PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_11);
              __Pyx_GIVEREF(__pyx_t_11);
              PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_10);
              __Pyx_GIVEREF(__pyx_t_10);
              __pyx_t_11 = 0;
              __pyx_t_10 = 0;
              __pyx_t_10 = PyDict_New(); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_10);

              /* "pandas/internals.pyx":793
     *                         nv = v if inplace else v.copy()
     *                         nv = _block_shape(nv)
     *                         block = make_block(             # <<<<<<<<<<<<<<
     *                             nv, Index([item]), self.ref_items, fastpath=True)
     *
     */
              __pyx_t_11 = PyObject_Call(__pyx_t_3, __pyx_t_6, __pyx_t_10); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_11);
              __pyx_t_11 = 0;
            }
            __pyx_L13:;

     794:                             nv, Index([item]), self.ref_items, fastpath=True)

              /* "pandas/internals.pyx":794
     *                         nv = _block_shape(nv)
     *                         block = make_block(
     *                             nv, Index([item]), self.ref_items, fastpath=True)             # <<<<<<<<<<<<<<
     *
     *                     new_blocks.append(block)
     */
              __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_Index); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __pyx_t_11 = PyList_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_INCREF(__pyx_v_item);
              PyList_SET_ITEM(__pyx_t_11, 0, __pyx_v_item);
              __Pyx_GIVEREF(__pyx_v_item);
              __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_10);
              PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_11);
              __Pyx_GIVEREF(__pyx_t_11);
              __pyx_t_11 = 0;
              __pyx_t_11 = PyObject_Call(__pyx_t_6, __pyx_t_10, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_10);

              /* "pandas/internals.pyx":794
     *                         nv = _block_shape(nv)
     *                         block = make_block(
     *                             nv, Index([item]), self.ref_items, fastpath=True)             # <<<<<<<<<<<<<<
     *
     *                     new_blocks.append(block)
     */
              if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     795:

     796:                     new_blocks.append(block)

            /* "pandas/internals.pyx":796
     *                             nv, Index([item]), self.ref_items, fastpath=True)
     *
     *                     new_blocks.append(block)             # <<<<<<<<<<<<<<
     *
     *             else:
     */
            __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_block); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 796; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L10;
        }
        /*else*/ {

     797:

     798:             else:

     799:                 new_blocks.append(create_block(new_values, mask, new,

          /* "pandas/internals.pyx":799
     *
     *             else:
     *                 new_blocks.append(create_block(new_values, mask, new,             # <<<<<<<<<<<<<<
     *                                                self.items, reshape=False))
     *
     */
          __pyx_t_4 = PyTuple_New(4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_new_values);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_new_values);
          __Pyx_GIVEREF(__pyx_v_new_values);
          __Pyx_INCREF(__pyx_cur_scope->__pyx_v_mask);
          PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_cur_scope->__pyx_v_mask);
          __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_mask);
          __Pyx_INCREF(__pyx_v_new);
          PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_new);
          __Pyx_GIVEREF(__pyx_v_new);
          PyTuple_SET_ITEM(__pyx_t_4, 3, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

          /* "pandas/internals.pyx":799
     *
     *             else:
     *                 new_blocks.append(create_block(new_values, mask, new,             # <<<<<<<<<<<<<<
     *                                                self.items, reshape=False))
     *
     */
          __pyx_t_11 = PyObject_Call(__pyx_v_create_block, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_t_11); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        }
        __pyx_L10:;

     800:                                                self.items, reshape=False))

          /* "pandas/internals.pyx":800
     *             else:
     *                 new_blocks.append(create_block(new_values, mask, new,
     *                                                self.items, reshape=False))             # <<<<<<<<<<<<<<
     *
     *             return new_blocks
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 800; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

          /* "pandas/internals.pyx":800
     *             else:
     *                 new_blocks.append(create_block(new_values, mask, new,
     *                                                self.items, reshape=False))             # <<<<<<<<<<<<<<
     *
     *             return new_blocks
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_reshape, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 799; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     801:

     802:             return new_blocks

        /* "pandas/internals.pyx":802
     *                                                self.items, reshape=False))
     *
     *             return new_blocks             # <<<<<<<<<<<<<<
     *
     *         if inplace:
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_new_blocks);
        __pyx_r = __pyx_v_new_blocks;
        goto __pyx_L0;
      }
      __pyx_L8:;

     803:

     804:         if inplace:

      /* "pandas/internals.pyx":804
     *             return new_blocks
     *
     *         if inplace:             # <<<<<<<<<<<<<<
     *             return [self]
     *
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     805:             return [self]

        /* "pandas/internals.pyx":805
     *
     *         if inplace:
     *             return [self]             # <<<<<<<<<<<<<<
     *
     *         return [make_block(new_values, self.items, self.ref_items,
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_11 = PyList_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 805; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
        PyList_SET_ITEM(__pyx_t_11, 0, __pyx_cur_scope->__pyx_v_self);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
        __pyx_r = __pyx_t_11;
        __pyx_t_11 = 0;
        goto __pyx_L0;
      }

     806:

     807:         return [make_block(new_values, self.items, self.ref_items,

      /* "pandas/internals.pyx":807
     *             return [self]
     *
     *         return [make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                            placement=self._ref_locs, fastpath=True)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_1 = 0;
      __pyx_t_4 = 0;
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);

      /* "pandas/internals.pyx":807
     *             return [self]
     *
     *         return [make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                            placement=self._ref_locs, fastpath=True)]
     *
     */
      __pyx_t_1 = PyObject_Call(__pyx_t_11, __pyx_t_10, __pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     808:                            placement=self._ref_locs, fastpath=True)]

      /* "pandas/internals.pyx":808
     *
     *         return [make_block(new_values, self.items, self.ref_items,
     *                            placement=self._ref_locs, fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *     def interpolate(self, method='pad', axis=0, index=None,
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_placement, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     809:

     810:     def interpolate(self, method='pad', axis=0, index=None,

    /* "pandas/internals.pyx":810
     *                            placement=self._ref_locs, fastpath=True)]
     *
     *     def interpolate(self, method='pad', axis=0, index=None,             # <<<<<<<<<<<<<<
     *                     values=None, inplace=False, limit=None,
     *                     fill_value=None, coerce=False, downcast=None, **kwargs):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_102interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_102interpolate = {__Pyx_NAMESTR("interpolate"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_102interpolate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_102interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_index = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_coerce = 0;
      PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("interpolate (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_method,&__pyx_n_s_axis,&__pyx_n_s_index,&__pyx_n_s_values,&__pyx_n_s_inplace,&__pyx_n_s_limit,&__pyx_n_s_fill_value,&__pyx_n_s_coerce,&__pyx_n_s_downcast,0};
        PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
        values[1] = ((PyObject *)((PyObject*)__pyx_n_s_pad));
        values[2] = ((PyObject *)((PyObject *)__pyx_int_0));
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":810
     *                            placement=self._ref_locs, fastpath=True)]
     *
     *     def interpolate(self, method='pad', axis=0, index=None,             # <<<<<<<<<<<<<<
     *                     values=None, inplace=False, limit=None,
     *                     fill_value=None, coerce=False, downcast=None, **kwargs):
     */

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_101interpolate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_axis, PyObject *__pyx_v_index, PyObject *__pyx_v_values, PyObject *__pyx_v_inplace, PyObject *__pyx_v_limit, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_coerce, PyObject *__pyx_v_downcast, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("interpolate", 0);

      /* "pandas/internals.pyx":810
     *                            placement=self._ref_locs, fastpath=True)]
     *
     *     def interpolate(self, method='pad', axis=0, index=None,             # <<<<<<<<<<<<<<
     *                     values=None, inplace=False, limit=None,
     *                     fill_value=None, coerce=False, downcast=None, **kwargs):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.Block.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":810
     *                            placement=self._ref_locs, fastpath=True)]
     *
     *     def interpolate(self, method='pad', axis=0, index=None,             # <<<<<<<<<<<<<<
     *                     values=None, inplace=False, limit=None,
     *                     fill_value=None, coerce=False, downcast=None, **kwargs):
     */
      __pyx_tuple__269 = PyTuple_Pack(13, __pyx_n_s_self, __pyx_n_s_method, __pyx_n_s_axis, __pyx_n_s_index, __pyx_n_s_values, __pyx_n_s_inplace, __pyx_n_s_limit, __pyx_n_s_fill_value, __pyx_n_s_coerce, __pyx_n_s_downcast, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_m); if (unlikely(!__pyx_tuple__269)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__269);
      __Pyx_GIVEREF(__pyx_tuple__269);
      __pyx_codeobj__270 = (PyObject*)__Pyx_PyCode_New(10, 0, 13, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__269, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_interpolate_2, 810, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__270)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":810
     *                            placement=self._ref_locs, fastpath=True)]
     *
     *     def interpolate(self, method='pad', axis=0, index=None,             # <<<<<<<<<<<<<<
     *                     values=None, inplace=False, limit=None,
     *                     fill_value=None, coerce=False, downcast=None, **kwargs):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_102interpolate, 0, __pyx_n_s_Block_interpolate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__270)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__271);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_interpolate_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__271 = PyTuple_Pack(9, ((PyObject*)__pyx_n_s_pad), ((PyObject *)__pyx_int_0), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__271)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__271);
      __Pyx_GIVEREF(__pyx_tuple__271);

     811:                     values=None, inplace=False, limit=None,

        /* "pandas/internals.pyx":811
     *
     *     def interpolate(self, method='pad', axis=0, index=None,
     *                     values=None, inplace=False, limit=None,             # <<<<<<<<<<<<<<
     *                     fill_value=None, coerce=False, downcast=None, **kwargs):
     *
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_False));
        values[6] = ((PyObject *)((PyObject *)Py_None));

     812:                     fill_value=None, coerce=False, downcast=None, **kwargs):

        /* "pandas/internals.pyx":812
     *     def interpolate(self, method='pad', axis=0, index=None,
     *                     values=None, inplace=False, limit=None,
     *                     fill_value=None, coerce=False, downcast=None, **kwargs):             # <<<<<<<<<<<<<<
     *
     *         # a fill na type method
     */
        values[7] = ((PyObject *)((PyObject *)Py_None));
        values[8] = ((PyObject *)((PyObject *)Py_False));
        values[9] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
            case  9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_index);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[6] = value; kw_args--; }
            }
            case  7:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[7] = value; kw_args--; }
            }
            case  8:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_coerce);
              if (value) { values[8] = value; kw_args--; }
            }
            case  9:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[9] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "interpolate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
            case  9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_method = values[1];
        __pyx_v_axis = values[2];
        __pyx_v_index = values[3];
        __pyx_v_values = values[4];
        __pyx_v_inplace = values[5];
        __pyx_v_limit = values[6];
        __pyx_v_fill_value = values[7];
        __pyx_v_coerce = values[8];
        __pyx_v_downcast = values[9];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("interpolate", 0, 1, 10, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 810; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.Block.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_101interpolate(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_axis, __pyx_v_index, __pyx_v_values, __pyx_v_inplace, __pyx_v_limit, __pyx_v_fill_value, __pyx_v_coerce, __pyx_v_downcast, __pyx_v_kwargs);

     813:

     814:         # a fill na type method

     815:         try:

      /* "pandas/internals.pyx":815
     *
     *         # a fill na type method
     *         try:             # <<<<<<<<<<<<<<
     *             m = com._clean_fill_method(method)
     *         except:
     */
      {
        /*try:*/ {

     816:             m = com._clean_fill_method(method)

          /* "pandas/internals.pyx":816
     *         # a fill na type method
     *         try:
     *             m = com._clean_fill_method(method)             # <<<<<<<<<<<<<<
     *         except:
     *             m = None
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_clean_fill_method); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_method);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_method);
          __Pyx_GIVEREF(__pyx_v_method);
          __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 816; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_v_m = __pyx_t_6;
          __pyx_t_6 = 0;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;

     817:         except:

        /* "pandas/internals.pyx":817
     *         try:
     *             m = com._clean_fill_method(method)
     *         except:             # <<<<<<<<<<<<<<
     *             m = None
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.Block.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_4, &__pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 817; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_5);

     818:             m = None

          /* "pandas/internals.pyx":818
     *             m = com._clean_fill_method(method)
     *         except:
     *             m = None             # <<<<<<<<<<<<<<
     *
     *         if m is not None:
     */
          __Pyx_INCREF(Py_None);
          __Pyx_XDECREF_SET(__pyx_v_m, Py_None);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     819:

     820:         if m is not None:

      /* "pandas/internals.pyx":820
     *             m = None
     *
     *         if m is not None:             # <<<<<<<<<<<<<<
     *             return self._interpolate_with_fill(method=m,
     *                                                axis=axis,
     */
      __pyx_t_7 = (__pyx_v_m != Py_None);
      __pyx_t_8 = (__pyx_t_7 != 0);
      if (__pyx_t_8) {

     821:             return self._interpolate_with_fill(method=m,

        /* "pandas/internals.pyx":821
     *
     *         if m is not None:
     *             return self._interpolate_with_fill(method=m,             # <<<<<<<<<<<<<<
     *                                                axis=axis,
     *                                                inplace=inplace,
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_interpolate_with_fill); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_method, __pyx_v_m) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":821
     *
     *         if m is not None:
     *             return self._interpolate_with_fill(method=m,             # <<<<<<<<<<<<<<
     *                                                axis=axis,
     *                                                inplace=inplace,
     */
        __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, __pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_6;
        __pyx_t_6 = 0;
        goto __pyx_L0;
      }

     822:                                                axis=axis,

        /* "pandas/internals.pyx":822
     *         if m is not None:
     *             return self._interpolate_with_fill(method=m,
     *                                                axis=axis,             # <<<<<<<<<<<<<<
     *                                                inplace=inplace,
     *                                                limit=limit,
     */
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     823:                                                inplace=inplace,

        /* "pandas/internals.pyx":823
     *             return self._interpolate_with_fill(method=m,
     *                                                axis=axis,
     *                                                inplace=inplace,             # <<<<<<<<<<<<<<
     *                                                limit=limit,
     *                                                fill_value=fill_value,
     */
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     824:                                                limit=limit,

        /* "pandas/internals.pyx":824
     *                                                axis=axis,
     *                                                inplace=inplace,
     *                                                limit=limit,             # <<<<<<<<<<<<<<
     *                                                fill_value=fill_value,
     *                                                coerce=coerce,
     */
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     825:                                                fill_value=fill_value,

        /* "pandas/internals.pyx":825
     *                                                inplace=inplace,
     *                                                limit=limit,
     *                                                fill_value=fill_value,             # <<<<<<<<<<<<<<
     *                                                coerce=coerce,
     *                                                downcast=downcast)
     */
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     826:                                                coerce=coerce,

        /* "pandas/internals.pyx":826
     *                                                limit=limit,
     *                                                fill_value=fill_value,
     *                                                coerce=coerce,             # <<<<<<<<<<<<<<
     *                                                downcast=downcast)
     *         # try an interp method
     */
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_coerce, __pyx_v_coerce) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     827:                                                downcast=downcast)

        /* "pandas/internals.pyx":827
     *                                                fill_value=fill_value,
     *                                                coerce=coerce,
     *                                                downcast=downcast)             # <<<<<<<<<<<<<<
     *         # try an interp method
     *         try:
     */
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_downcast, __pyx_v_downcast) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     828:         # try an interp method

     829:         try:

      /* "pandas/internals.pyx":829
     *                                                downcast=downcast)
     *         # try an interp method
     *         try:             # <<<<<<<<<<<<<<
     *             m = com._clean_interp_method(method, **kwargs)
     *         except:
     */
      {
        /*try:*/ {

     830:             m = com._clean_interp_method(method, **kwargs)

          /* "pandas/internals.pyx":830
     *         # try an interp method
     *         try:
     *             m = com._clean_interp_method(method, **kwargs)             # <<<<<<<<<<<<<<
     *         except:
     *             m = None
     */
          __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L14_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_clean_interp_method); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L14_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L14_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_method);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_method);
          __Pyx_GIVEREF(__pyx_v_method);
          __pyx_t_5 = __pyx_v_kwargs;
          __Pyx_INCREF(__pyx_t_5);
          __pyx_t_9 = PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 830; __pyx_clineno = __LINE__; goto __pyx_L14_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF_SET(__pyx_v_m, __pyx_t_9);
          __pyx_t_9 = 0;
        }
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        goto __pyx_L21_try_end;
        __pyx_L14_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;

     831:         except:

        /* "pandas/internals.pyx":831
     *         try:
     *             m = com._clean_interp_method(method, **kwargs)
     *         except:             # <<<<<<<<<<<<<<
     *             m = None
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.Block.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_9, &__pyx_t_5, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 831; __pyx_clineno = __LINE__; goto __pyx_L16_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_6);

     832:             m = None

          /* "pandas/internals.pyx":832
     *             m = com._clean_interp_method(method, **kwargs)
     *         except:
     *             m = None             # <<<<<<<<<<<<<<
     *
     *         if m is not None:
     */
          __Pyx_INCREF(Py_None);
          __Pyx_DECREF_SET(__pyx_v_m, Py_None);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L15_exception_handled;
        }
        __pyx_L16_except_error:;
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_ExceptionReset(__pyx_t_3, __pyx_t_2, __pyx_t_1);
        goto __pyx_L1_error;
        __pyx_L15_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_ExceptionReset(__pyx_t_3, __pyx_t_2, __pyx_t_1);
        __pyx_L21_try_end:;
      }

     833:

     834:         if m is not None:

      /* "pandas/internals.pyx":834
     *             m = None
     *
     *         if m is not None:             # <<<<<<<<<<<<<<
     *             return self._interpolate(method=m,
     *                                      index=index,
     */
      __pyx_t_8 = (__pyx_v_m != Py_None);
      __pyx_t_7 = (__pyx_t_8 != 0);
      if (__pyx_t_7) {

     835:             return self._interpolate(method=m,

        /* "pandas/internals.pyx":835
     *
     *         if m is not None:
     *             return self._interpolate(method=m,             # <<<<<<<<<<<<<<
     *                                      index=index,
     *                                      values=values,
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_interpolate); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);

        /* "pandas/internals.pyx":835
     *
     *         if m is not None:
     *             return self._interpolate(method=m,             # <<<<<<<<<<<<<<
     *                                      index=index,
     *                                      values=values,
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_method))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_method); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_method, __pyx_v_m) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":835
     *
     *         if m is not None:
     *             return self._interpolate(method=m,             # <<<<<<<<<<<<<<
     *                                      index=index,
     *                                      values=values,
     */
        __pyx_t_9 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_r = __pyx_t_9;
        __pyx_t_9 = 0;
        goto __pyx_L0;
      }

     836:                                      index=index,

        /* "pandas/internals.pyx":836
     *         if m is not None:
     *             return self._interpolate(method=m,
     *                                      index=index,             # <<<<<<<<<<<<<<
     *                                      values=values,
     *                                      axis=axis,
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_index))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_index); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_index, __pyx_v_index) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     837:                                      values=values,

        /* "pandas/internals.pyx":837
     *             return self._interpolate(method=m,
     *                                      index=index,
     *                                      values=values,             # <<<<<<<<<<<<<<
     *                                      axis=axis,
     *                                      limit=limit,
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_values))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_values); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_values, __pyx_v_values) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     838:                                      axis=axis,

        /* "pandas/internals.pyx":838
     *                                      index=index,
     *                                      values=values,
     *                                      axis=axis,             # <<<<<<<<<<<<<<
     *                                      limit=limit,
     *                                      fill_value=fill_value,
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_axis))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_axis); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     839:                                      limit=limit,

        /* "pandas/internals.pyx":839
     *                                      values=values,
     *                                      axis=axis,
     *                                      limit=limit,             # <<<<<<<<<<<<<<
     *                                      fill_value=fill_value,
     *                                      inplace=inplace,
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_limit))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_limit); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     840:                                      fill_value=fill_value,

        /* "pandas/internals.pyx":840
     *                                      axis=axis,
     *                                      limit=limit,
     *                                      fill_value=fill_value,             # <<<<<<<<<<<<<<
     *                                      inplace=inplace,
     *                                      downcast=downcast,
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_fill_value))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_fill_value); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     841:                                      inplace=inplace,

        /* "pandas/internals.pyx":841
     *                                      limit=limit,
     *                                      fill_value=fill_value,
     *                                      inplace=inplace,             # <<<<<<<<<<<<<<
     *                                      downcast=downcast,
     *                                      **kwargs)
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_inplace))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_inplace); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     842:                                      downcast=downcast,

        /* "pandas/internals.pyx":842
     *                                      fill_value=fill_value,
     *                                      inplace=inplace,
     *                                      downcast=downcast,             # <<<<<<<<<<<<<<
     *                                      **kwargs)
     *
     */
        if (unlikely(PyDict_GetItem(__pyx_t_5, __pyx_n_s_downcast))) {
          __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_downcast); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_downcast, __pyx_v_downcast) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     843:                                      **kwargs)

        /* "pandas/internals.pyx":843
     *                                      inplace=inplace,
     *                                      downcast=downcast,
     *                                      **kwargs)             # <<<<<<<<<<<<<<
     *
     *         raise ValueError("invalid method '{0}' to interpolate.".format(method))
     */
        __pyx_t_5 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

     844:

     845:         raise ValueError("invalid method '{0}' to interpolate.".format(method))

      /* "pandas/internals.pyx":845
     *                                      **kwargs)
     *
     *         raise ValueError("invalid method '{0}' to interpolate.".format(method))             # <<<<<<<<<<<<<<
     *
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,
     */
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_invalid_method_0_to_interpolate, __pyx_n_s_format); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_method);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_method);
      __Pyx_GIVEREF(__pyx_v_method);
      __pyx_t_6 = PyObject_Call(__pyx_t_9, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_Raise(__pyx_t_6, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      {__pyx_filename = __pyx_f[0]; __pyx_lineno = 845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     846:

     847:     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,

    /* "pandas/internals.pyx":847
     *         raise ValueError("invalid method '{0}' to interpolate.".format(method))
     *
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                                limit=None, fill_value=None, coerce=False,
     *                                downcast=None):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_104_interpolate_with_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_103_interpolate_with_fill[] = " fillna but using the interpolate machinery ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_104_interpolate_with_fill = {__Pyx_NAMESTR("_interpolate_with_fill"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_104_interpolate_with_fill, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_103_interpolate_with_fill)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_104_interpolate_with_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_coerce = 0;
      PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interpolate_with_fill (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_method,&__pyx_n_s_axis,&__pyx_n_s_inplace,&__pyx_n_s_limit,&__pyx_n_s_fill_value,&__pyx_n_s_coerce,&__pyx_n_s_downcast,0};
        PyObject* values[8] = {0,0,0,0,0,0,0,0};
        values[1] = ((PyObject *)((PyObject*)__pyx_n_s_pad));
        values[2] = ((PyObject *)((PyObject *)__pyx_int_0));
        values[3] = ((PyObject *)((PyObject *)Py_False));

      /* "pandas/internals.pyx":847
     *         raise ValueError("invalid method '{0}' to interpolate.".format(method))
     *
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                                limit=None, fill_value=None, coerce=False,
     *                                downcast=None):
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_103_interpolate_with_fill(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_axis, PyObject *__pyx_v_inplace, PyObject *__pyx_v_limit, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_coerce, PyObject *__pyx_v_downcast) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interpolate_with_fill", 0);
      __Pyx_INCREF(__pyx_v_fill_value);

      /* "pandas/internals.pyx":847
     *         raise ValueError("invalid method '{0}' to interpolate.".format(method))
     *
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                                limit=None, fill_value=None, coerce=False,
     *                                downcast=None):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block._interpolate_with_fill", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":847
     *         raise ValueError("invalid method '{0}' to interpolate.".format(method))
     *
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                                limit=None, fill_value=None, coerce=False,
     *                                downcast=None):
     */
      __pyx_tuple__272 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_method, __pyx_n_s_axis, __pyx_n_s_inplace, __pyx_n_s_limit, __pyx_n_s_fill_value, __pyx_n_s_coerce, __pyx_n_s_downcast, __pyx_n_s_values, __pyx_n_s_blocks); if (unlikely(!__pyx_tuple__272)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__272);
      __Pyx_GIVEREF(__pyx_tuple__272);
      __pyx_codeobj__273 = (PyObject*)__Pyx_PyCode_New(8, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__272, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_interpolate_with_fill, 847, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__273)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":847
     *         raise ValueError("invalid method '{0}' to interpolate.".format(method))
     *
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                                limit=None, fill_value=None, coerce=False,
     *                                downcast=None):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_104_interpolate_with_fill, 0, __pyx_n_s_Block__interpolate_with_fill, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__273)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__274);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_interpolate_with_fill, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__274 = PyTuple_Pack(7, ((PyObject*)__pyx_n_s_pad), ((PyObject *)__pyx_int_0), ((PyObject *)Py_False), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__274)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__274);
      __Pyx_GIVEREF(__pyx_tuple__274);

     848:                                limit=None, fill_value=None, coerce=False,

        /* "pandas/internals.pyx":848
     *
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,
     *                                limit=None, fill_value=None, coerce=False,             # <<<<<<<<<<<<<<
     *                                downcast=None):
     *         """ fillna but using the interpolate machinery """
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_False));

     849:                                downcast=None):

        /* "pandas/internals.pyx":849
     *     def _interpolate_with_fill(self, method='pad', axis=0, inplace=False,
     *                                limit=None, fill_value=None, coerce=False,
     *                                downcast=None):             # <<<<<<<<<<<<<<
     *         """ fillna but using the interpolate machinery """
     *
     */
        values[7] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_coerce);
              if (value) { values[6] = value; kw_args--; }
            }
            case  7:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[7] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_interpolate_with_fill") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_method = values[1];
        __pyx_v_axis = values[2];
        __pyx_v_inplace = values[3];
        __pyx_v_limit = values[4];
        __pyx_v_fill_value = values[5];
        __pyx_v_coerce = values[6];
        __pyx_v_downcast = values[7];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_interpolate_with_fill", 0, 1, 8, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 847; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block._interpolate_with_fill", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_103_interpolate_with_fill(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_axis, __pyx_v_inplace, __pyx_v_limit, __pyx_v_fill_value, __pyx_v_coerce, __pyx_v_downcast);

     850:         """ fillna but using the interpolate machinery """

     851:

     852:         # if we are coercing, then don't force the conversion

     853:         # if the block can't hold the type

     854:         if coerce:

      /* "pandas/internals.pyx":854
     *         # if we are coercing, then don't force the conversion
     *         # if the block can't hold the type
     *         if coerce:             # <<<<<<<<<<<<<<
     *             if not self._can_hold_na:
     *                 if inplace:
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_coerce); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 854; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     855:             if not self._can_hold_na:

        /* "pandas/internals.pyx":855
     *         # if the block can't hold the type
     *         if coerce:
     *             if not self._can_hold_na:             # <<<<<<<<<<<<<<
     *                 if inplace:
     *                     return [self]
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_can_hold_na); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 855; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 855; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_3 = ((!__pyx_t_1) != 0);
        if (__pyx_t_3) {

     856:                 if inplace:

          /* "pandas/internals.pyx":856
     *         if coerce:
     *             if not self._can_hold_na:
     *                 if inplace:             # <<<<<<<<<<<<<<
     *                     return [self]
     *                 else:
     */
          __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 856; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (__pyx_t_3) {

     857:                     return [self]

            /* "pandas/internals.pyx":857
     *             if not self._can_hold_na:
     *                 if inplace:
     *                     return [self]             # <<<<<<<<<<<<<<
     *                 else:
     *                     return [self.copy()]
     */
            __Pyx_XDECREF(__pyx_r);
            __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 857; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_INCREF(__pyx_v_self);
            PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_self);
            __Pyx_GIVEREF(__pyx_v_self);
            __pyx_r = __pyx_t_2;
            __pyx_t_2 = 0;
            goto __pyx_L0;
          }
          /*else*/ {

     858:                 else:

     859:                     return [self.copy()]

            /* "pandas/internals.pyx":859
     *                     return [self]
     *                 else:
     *                     return [self.copy()]             # <<<<<<<<<<<<<<
     *
     *         fill_value = self._try_fill(fill_value)
     */
            __Pyx_XDECREF(__pyx_r);
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 859; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_4);
            __pyx_t_4 = 0;
            __pyx_r = __pyx_t_2;
            __pyx_t_2 = 0;
            goto __pyx_L0;
          }
        }
        goto __pyx_L3;
      }
      __pyx_L3:;

     860:

     861:         fill_value = self._try_fill(fill_value)

      /* "pandas/internals.pyx":861
     *                     return [self.copy()]
     *
     *         fill_value = self._try_fill(fill_value)             # <<<<<<<<<<<<<<
     *         values = self.values if inplace else self.values.copy()
     *         values = self._try_operate(values)
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_fill); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 861; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 861; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_fill_value);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_fill_value);
      __Pyx_GIVEREF(__pyx_v_fill_value);
      __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 861; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_5);
      __pyx_t_5 = 0;

     862:         values = self.values if inplace else self.values.copy()

      /* "pandas/internals.pyx":862
     *
     *         fill_value = self._try_fill(fill_value)
     *         values = self.values if inplace else self.values.copy()             # <<<<<<<<<<<<<<
     *         values = self._try_operate(values)
     *         values = com.interpolate_2d(values, method, axis, limit, fill_value)
     */
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_3) {
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __pyx_t_4;
        __pyx_t_4 = 0;
      } else {
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_5 = __pyx_t_4;
        __pyx_t_4 = 0;
      }
      __pyx_v_values = __pyx_t_5;
      __pyx_t_5 = 0;

     863:         values = self._try_operate(values)

      /* "pandas/internals.pyx":863
     *         fill_value = self._try_fill(fill_value)
     *         values = self.values if inplace else self.values.copy()
     *         values = self._try_operate(values)             # <<<<<<<<<<<<<<
     *         values = com.interpolate_2d(values, method, axis, limit, fill_value)
     *         values = self._try_coerce_result(values)
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_operate); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 863; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 863; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_2 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 863; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_2);
      __pyx_t_2 = 0;

     864:         values = com.interpolate_2d(values, method, axis, limit, fill_value)

      /* "pandas/internals.pyx":864
     *         values = self.values if inplace else self.values.copy()
     *         values = self._try_operate(values)
     *         values = com.interpolate_2d(values, method, axis, limit, fill_value)             # <<<<<<<<<<<<<<
     *         values = self._try_coerce_result(values)
     *
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_interpolate_2d); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_method);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_method);
      __Pyx_GIVEREF(__pyx_v_method);
      __Pyx_INCREF(__pyx_v_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_axis);
      __Pyx_GIVEREF(__pyx_v_axis);
      __Pyx_INCREF(__pyx_v_limit);
      PyTuple_SET_ITEM(__pyx_t_2, 3, __pyx_v_limit);
      __Pyx_GIVEREF(__pyx_v_limit);
      __Pyx_INCREF(__pyx_v_fill_value);
      PyTuple_SET_ITEM(__pyx_t_2, 4, __pyx_v_fill_value);
      __Pyx_GIVEREF(__pyx_v_fill_value);
      __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_2, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_5);
      __pyx_t_5 = 0;

     865:         values = self._try_coerce_result(values)

      /* "pandas/internals.pyx":865
     *         values = self._try_operate(values)
     *         values = com.interpolate_2d(values, method, axis, limit, fill_value)
     *         values = self._try_coerce_result(values)             # <<<<<<<<<<<<<<
     *
     *         blocks = [make_block(values, self.items, self.ref_items,
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_coerce_result); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 865; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 865; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 865; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_4);
      __pyx_t_4 = 0;

     866:

     867:         blocks = [make_block(values, self.items, self.ref_items,

      /* "pandas/internals.pyx":867
     *         values = self._try_coerce_result(values)
     *
     *         blocks = [make_block(values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                              ndim=self.ndim, klass=self.__class__,
     *                              fastpath=True)]
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_2 = 0;
      __pyx_t_5 = 0;
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);

      /* "pandas/internals.pyx":867
     *         values = self._try_coerce_result(values)
     *
     *         blocks = [make_block(values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                              ndim=self.ndim, klass=self.__class__,
     *                              fastpath=True)]
     */
      __pyx_t_2 = PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_v_blocks = ((PyObject*)__pyx_t_5);
      __pyx_t_5 = 0;

     868:                              ndim=self.ndim, klass=self.__class__,

      /* "pandas/internals.pyx":868
     *
     *         blocks = [make_block(values, self.items, self.ref_items,
     *                              ndim=self.ndim, klass=self.__class__,             # <<<<<<<<<<<<<<
     *                              fastpath=True)]
     *         return self._maybe_downcast(blocks, downcast)
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_ndim, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 868; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_klass, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     869:                              fastpath=True)]

      /* "pandas/internals.pyx":869
     *         blocks = [make_block(values, self.items, self.ref_items,
     *                              ndim=self.ndim, klass=self.__class__,
     *                              fastpath=True)]             # <<<<<<<<<<<<<<
     *         return self._maybe_downcast(blocks, downcast)
     *
     */
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     870:         return self._maybe_downcast(blocks, downcast)

      /* "pandas/internals.pyx":870
     *                              ndim=self.ndim, klass=self.__class__,
     *                              fastpath=True)]
     *         return self._maybe_downcast(blocks, downcast)             # <<<<<<<<<<<<<<
     *
     *     def _interpolate(self, method=None, index=None, values=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_maybe_downcast); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 870; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 870; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_blocks);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_blocks);
      __Pyx_GIVEREF(__pyx_v_blocks);
      __Pyx_INCREF(__pyx_v_downcast);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_downcast);
      __Pyx_GIVEREF(__pyx_v_downcast);
      __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_2, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 870; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_6;
      __pyx_t_6 = 0;
      goto __pyx_L0;

     871:

     872:     def _interpolate(self, method=None, index=None, values=None,

    /* "pandas/internals.pyx":872
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _interpolate(self, method=None, index=None, values=None,             # <<<<<<<<<<<<<<
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_106_interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_105_interpolate[] = " interpolate using scipy wrappers ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_106_interpolate = {__Pyx_NAMESTR("_interpolate"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_106_interpolate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_105_interpolate)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_106_interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_index = 0;
      CYTHON_UNUSED PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interpolate (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_method,&__pyx_n_s_index,&__pyx_n_s_values,&__pyx_n_s_fill_value,&__pyx_n_s_axis,&__pyx_n_s_limit,&__pyx_n_s_inplace,&__pyx_n_s_downcast,0};
        PyObject* values[9] = {0,0,0,0,0,0,0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":872
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _interpolate(self, method=None, index=None, values=None,             # <<<<<<<<<<<<<<
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):
     */

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":872
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _interpolate(self, method=None, index=None, values=None,             # <<<<<<<<<<<<<<
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):
     */

    static PyObject *__pyx_pf_6pandas_9internals_5Block_105_interpolate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_index, CYTHON_UNUSED PyObject *__pyx_v_values, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_axis, PyObject *__pyx_v_limit, PyObject *__pyx_v_inplace, PyObject *__pyx_v_downcast, PyObject *__pyx_v_kwargs) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_2__interpolate *__pyx_cur_scope;
      PyObject *__pyx_v_data = NULL;
      PyObject *__pyx_v_func = 0;
      PyObject *__pyx_v_interp_values = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interpolate", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_2__interpolate *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_2__interpolate(__pyx_ptype_6pandas_9internals___pyx_scope_struct_2__interpolate, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_method = __pyx_v_method;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_method);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_method);
      __pyx_cur_scope->__pyx_v_index = __pyx_v_index;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_index);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_index);
      __pyx_cur_scope->__pyx_v_fill_value = __pyx_v_fill_value;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_fill_value);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_fill_value);
      __pyx_cur_scope->__pyx_v_limit = __pyx_v_limit;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_limit);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_limit);
      __pyx_cur_scope->__pyx_v_kwargs = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_kwargs);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_kwargs);

      /* "pandas/internals.pyx":872
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _interpolate(self, method=None, index=None, values=None,             # <<<<<<<<<<<<<<
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.Block._interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_data);
      __Pyx_XDECREF(__pyx_v_func);
      __Pyx_XDECREF(__pyx_v_interp_values);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":872
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _interpolate(self, method=None, index=None, values=None,             # <<<<<<<<<<<<<<
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):
     */
      __pyx_tuple__275 = PyTuple_Pack(16, __pyx_n_s_self, __pyx_n_s_method, __pyx_n_s_index, __pyx_n_s_values, __pyx_n_s_fill_value, __pyx_n_s_axis, __pyx_n_s_limit, __pyx_n_s_inplace, __pyx_n_s_downcast, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_data_2, __pyx_n_s_func, __pyx_n_s_func, __pyx_n_s_interp_values, __pyx_n_s_blocks); if (unlikely(!__pyx_tuple__275)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__275);
      __Pyx_GIVEREF(__pyx_tuple__275);
      __pyx_codeobj__276 = (PyObject*)__Pyx_PyCode_New(9, 0, 16, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__275, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_interpolate, 872, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__276)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":872
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _interpolate(self, method=None, index=None, values=None,             # <<<<<<<<<<<<<<
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_106_interpolate, 0, __pyx_n_s_Block__interpolate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__276)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__277);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_interpolate, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__277 = PyTuple_Pack(8, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)__pyx_int_0), ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__277)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__277);
      __Pyx_GIVEREF(__pyx_tuple__277);

    /* "pandas/internals.pyx":872
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def _interpolate(self, method=None, index=None, values=None,             # <<<<<<<<<<<<<<
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_2__interpolate {
      PyObject_HEAD
      PyObject *__pyx_v_fill_value;
      PyObject *__pyx_v_index;
      PyObject *__pyx_v_kwargs;
      PyObject *__pyx_v_limit;
      PyObject *__pyx_v_method;
    };

     873:                      fill_value=None, axis=0, limit=None,

        /* "pandas/internals.pyx":873
     *
     *     def _interpolate(self, method=None, index=None, values=None,
     *                      fill_value=None, axis=0, limit=None,             # <<<<<<<<<<<<<<
     *                      inplace=False, downcast=None, **kwargs):
     *         """ interpolate using scipy wrappers """
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)__pyx_int_0));
        values[6] = ((PyObject *)((PyObject *)Py_None));

     874:                      inplace=False, downcast=None, **kwargs):

        /* "pandas/internals.pyx":874
     *     def _interpolate(self, method=None, index=None, values=None,
     *                      fill_value=None, axis=0, limit=None,
     *                      inplace=False, downcast=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """ interpolate using scipy wrappers """
     *
     */
        values[7] = ((PyObject *)((PyObject *)Py_False));
        values[8] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_index);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[6] = value; kw_args--; }
            }
            case  7:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[7] = value; kw_args--; }
            }
            case  8:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[8] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "_interpolate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_method = values[1];
        __pyx_v_index = values[2];
        __pyx_v_values = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_axis = values[5];
        __pyx_v_limit = values[6];
        __pyx_v_inplace = values[7];
        __pyx_v_downcast = values[8];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_interpolate", 0, 1, 9, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 872; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_CLEAR(__pyx_v_kwargs);
      __Pyx_AddTraceback("pandas.internals.Block._interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_105_interpolate(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_index, __pyx_v_values, __pyx_v_fill_value, __pyx_v_axis, __pyx_v_limit, __pyx_v_inplace, __pyx_v_downcast, __pyx_v_kwargs);

     875:         """ interpolate using scipy wrappers """

     876:

     877:         data = self.values if inplace else self.values.copy()

      /* "pandas/internals.pyx":877
     *         """ interpolate using scipy wrappers """
     *
     *         data = self.values if inplace else self.values.copy()             # <<<<<<<<<<<<<<
     *
     *         # only deal with floats
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      } else {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_v_data = __pyx_t_1;
      __pyx_t_1 = 0;

     878:

     879:         # only deal with floats

     880:         if not self.is_float:

      /* "pandas/internals.pyx":880
     *
     *         # only deal with floats
     *         if not self.is_float:             # <<<<<<<<<<<<<<
     *             if not self.is_integer:
     *                 return self
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_float); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 880; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 880; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_5 = ((!__pyx_t_2) != 0);
      if (__pyx_t_5) {

     881:             if not self.is_integer:

        /* "pandas/internals.pyx":881
     *         # only deal with floats
     *         if not self.is_float:
     *             if not self.is_integer:             # <<<<<<<<<<<<<<
     *                 return self
     *             data = data.astype(np.float64)
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_integer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 881; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 881; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_2 = ((!__pyx_t_5) != 0);
        if (__pyx_t_2) {

     882:                 return self

          /* "pandas/internals.pyx":882
     *         if not self.is_float:
     *             if not self.is_integer:
     *                 return self             # <<<<<<<<<<<<<<
     *             data = data.astype(np.float64)
     *
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_self);
          __pyx_r = __pyx_v_self;
          goto __pyx_L0;
        }

     883:             data = data.astype(np.float64)

        /* "pandas/internals.pyx":883
     *             if not self.is_integer:
     *                 return self
     *             data = data.astype(np.float64)             # <<<<<<<<<<<<<<
     *
     *         if fill_value is None:
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_astype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_float64); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 883; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_data, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     884:

     885:         if fill_value is None:

      /* "pandas/internals.pyx":885
     *             data = data.astype(np.float64)
     *
     *         if fill_value is None:             # <<<<<<<<<<<<<<
     *             fill_value = self.fill_value
     *
     */
      __pyx_t_2 = (__pyx_cur_scope->__pyx_v_fill_value == Py_None);
      __pyx_t_5 = (__pyx_t_2 != 0);
      if (__pyx_t_5) {

     886:             fill_value = self.fill_value

        /* "pandas/internals.pyx":886
     *
     *         if fill_value is None:
     *             fill_value = self.fill_value             # <<<<<<<<<<<<<<
     *
     *         if method in ('krogh', 'piecewise_polynomial', 'pchip'):
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_fill_value);
        __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_fill_value, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L5;
      }
      __pyx_L5:;

     887:

     888:         if method in ('krogh', 'piecewise_polynomial', 'pchip'):

      /* "pandas/internals.pyx":888
     *             fill_value = self.fill_value
     *
     *         if method in ('krogh', 'piecewise_polynomial', 'pchip'):             # <<<<<<<<<<<<<<
     *             if not index.is_monotonic:
     *                 raise ValueError("{0} interpolation requires that the "
     */
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_method);
      __pyx_t_4 = __pyx_cur_scope->__pyx_v_method;
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_krogh, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (!((int)__pyx_t_5)) {
        __pyx_t_3 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_piecewise_polynomial, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_6 = ((int)__pyx_t_2);
      } else {
        __pyx_t_6 = ((int)__pyx_t_5);
      }
      if (!__pyx_t_6) {
        __pyx_t_3 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_pchip, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_2 = ((int)__pyx_t_5);
      } else {
        __pyx_t_2 = __pyx_t_6;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = (__pyx_t_2 != 0);
      if (__pyx_t_6) {

     889:             if not index.is_monotonic:

        /* "pandas/internals.pyx":889
     *
     *         if method in ('krogh', 'piecewise_polynomial', 'pchip'):
     *             if not index.is_monotonic:             # <<<<<<<<<<<<<<
     *                 raise ValueError("{0} interpolation requires that the "
     *                                  "index be monotonic.".format(method))
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_index, __pyx_n_s_is_monotonic); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_2 = ((!__pyx_t_6) != 0);
        if (__pyx_t_2) {

     890:                 raise ValueError("{0} interpolation requires that the "

          /* "pandas/internals.pyx":890
     *         if method in ('krogh', 'piecewise_polynomial', 'pchip'):
     *             if not index.is_monotonic:
     *                 raise ValueError("{0} interpolation requires that the "             # <<<<<<<<<<<<<<
     *                                  "index be monotonic.".format(method))
     *         # process 1-d slices in the axis direction
     */
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_Raise(__pyx_t_1, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        goto __pyx_L6;
      }
      __pyx_L6:;

     891:                                  "index be monotonic.".format(method))

          /* "pandas/internals.pyx":891
     *             if not index.is_monotonic:
     *                 raise ValueError("{0} interpolation requires that the "
     *                                  "index be monotonic.".format(method))             # <<<<<<<<<<<<<<
     *         # process 1-d slices in the axis direction
     *
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_0_interpolation_requires_that_t, __pyx_n_s_format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_cur_scope->__pyx_v_method);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_cur_scope->__pyx_v_method);
          __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_method);
          __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     892:         # process 1-d slices in the axis direction

     893:

     894:         def func(x):

    /* "pandas/internals.pyx":894
     *         # process 1-d slices in the axis direction
     *
     *         def func(x):             # <<<<<<<<<<<<<<
     *
     *             # process a 1-d slice, returning it
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_12_interpolate_1func(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_12_interpolate_1func = {__Pyx_NAMESTR("func"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_12_interpolate_1func, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_12_interpolate_1func(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("func (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_12_interpolate_func(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_12_interpolate_func(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_2__interpolate *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_2__interpolate *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("func", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_2__interpolate *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":894
     *         # process 1-d slices in the axis direction
     *
     *         def func(x):             # <<<<<<<<<<<<<<
     *
     *             # process a 1-d slice, returning it
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block._interpolate.func", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":894
     *         # process 1-d slices in the axis direction
     *
     *         def func(x):             # <<<<<<<<<<<<<<
     *
     *             # process a 1-d slice, returning it
     */
      __pyx_tuple__14 = PyTuple_Pack(1, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 894; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__14);
      __Pyx_GIVEREF(__pyx_tuple__14);

      /* "pandas/internals.pyx":894
     *         # process 1-d slices in the axis direction
     *
     *         def func(x):             # <<<<<<<<<<<<<<
     *
     *             # process a 1-d slice, returning it
     */
      __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_12_interpolate_1func, 0, __pyx_n_s_Block__interpolate_locals_func, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__15)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 894; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_func = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_codeobj__15 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__14, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_func, 894, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 894; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     895:

     896:             # process a 1-d slice, returning it

     897:             # should the axis argument be handled below in apply_along_axis?

     898:             # i.e. not an arg to com.interpolate_1d

     899:             return com.interpolate_1d(index, x, method=method, limit=limit,

      /* "pandas/internals.pyx":899
     *             # should the axis argument be handled below in apply_along_axis?
     *             # i.e. not an arg to com.interpolate_1d
     *             return com.interpolate_1d(index, x, method=method, limit=limit,             # <<<<<<<<<<<<<<
     *                                       fill_value=fill_value,
     *                                       bounds_error=False, **kwargs)
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_interpolate_1d); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (unlikely(!__pyx_cur_scope->__pyx_v_index)) { __Pyx_RaiseClosureNameError("index"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_index);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_index);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_index);
      __Pyx_INCREF(__pyx_v_x);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_x);
      __Pyx_GIVEREF(__pyx_v_x);

      /* "pandas/internals.pyx":899
     *             # should the axis argument be handled below in apply_along_axis?
     *             # i.e. not an arg to com.interpolate_1d
     *             return com.interpolate_1d(index, x, method=method, limit=limit,             # <<<<<<<<<<<<<<
     *                                       fill_value=fill_value,
     *                                       bounds_error=False, **kwargs)
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_method)) { __Pyx_RaiseClosureNameError("method"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (unlikely(PyDict_GetItem(__pyx_t_3, __pyx_n_s_method))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_method); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_method, __pyx_cur_scope->__pyx_v_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_v_limit)) { __Pyx_RaiseClosureNameError("limit"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (unlikely(PyDict_GetItem(__pyx_t_3, __pyx_n_s_limit))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_limit); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_limit, __pyx_cur_scope->__pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":899
     *             # should the axis argument be handled below in apply_along_axis?
     *             # i.e. not an arg to com.interpolate_1d
     *             return com.interpolate_1d(index, x, method=method, limit=limit,             # <<<<<<<<<<<<<<
     *                                       fill_value=fill_value,
     *                                       bounds_error=False, **kwargs)
     */
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     900:                                       fill_value=fill_value,

      /* "pandas/internals.pyx":900
     *             # i.e. not an arg to com.interpolate_1d
     *             return com.interpolate_1d(index, x, method=method, limit=limit,
     *                                       fill_value=fill_value,             # <<<<<<<<<<<<<<
     *                                       bounds_error=False, **kwargs)
     *
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_fill_value)) { __Pyx_RaiseClosureNameError("fill_value"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 900; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (unlikely(PyDict_GetItem(__pyx_t_3, __pyx_n_s_fill_value))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_fill_value); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_cur_scope->__pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     901:                                       bounds_error=False, **kwargs)

      /* "pandas/internals.pyx":901
     *             return com.interpolate_1d(index, x, method=method, limit=limit,
     *                                       fill_value=fill_value,
     *                                       bounds_error=False, **kwargs)             # <<<<<<<<<<<<<<
     *
     *         # interp each column independently
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_kwargs)) { __Pyx_RaiseClosureNameError("kwargs"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 901; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (unlikely(__pyx_cur_scope->__pyx_v_kwargs == Py_None)) {
        PyErr_SetString(PyExc_TypeError, "argument after ** must be a mapping, not NoneType");
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __pyx_t_3 = PyDict_Copy(__pyx_cur_scope->__pyx_v_kwargs); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":901
     *             return com.interpolate_1d(index, x, method=method, limit=limit,
     *                                       fill_value=fill_value,
     *                                       bounds_error=False, **kwargs)             # <<<<<<<<<<<<<<
     *
     *         # interp each column independently
     */
      if (unlikely(PyDict_GetItem(__pyx_t_3, __pyx_n_s_bounds_error))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_bounds_error); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_bounds_error, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     902:

     903:         # interp each column independently

     904:         interp_values = np.apply_along_axis(func, axis, data)

      /* "pandas/internals.pyx":904
     *
     *         # interp each column independently
     *         interp_values = np.apply_along_axis(func, axis, data)             # <<<<<<<<<<<<<<
     *
     *         blocks = [make_block(interp_values, self.items, self.ref_items,
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_apply_along_axis); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_func);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_func);
      __Pyx_GIVEREF(__pyx_v_func);
      __Pyx_INCREF(__pyx_v_axis);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_axis);
      __Pyx_GIVEREF(__pyx_v_axis);
      __Pyx_INCREF(__pyx_v_data);
      PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_data);
      __Pyx_GIVEREF(__pyx_v_data);
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_interp_values = __pyx_t_4;
      __pyx_t_4 = 0;

     905:

     906:         blocks = [make_block(interp_values, self.items, self.ref_items,

      /* "pandas/internals.pyx":906
     *         interp_values = np.apply_along_axis(func, axis, data)
     *
     *         blocks = [make_block(interp_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                   ndim=self.ndim, klass=self.__class__, fastpath=True)]
     *         return self._maybe_downcast(blocks, downcast)
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_INCREF(__pyx_v_interp_values);
      PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_interp_values);
      __Pyx_GIVEREF(__pyx_v_interp_values);
      PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_1 = 0;
      __pyx_t_3 = 0;
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":906
     *         interp_values = np.apply_along_axis(func, axis, data)
     *
     *         blocks = [make_block(interp_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                   ndim=self.ndim, klass=self.__class__, fastpath=True)]
     *         return self._maybe_downcast(blocks, downcast)
     */
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_7, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_v_blocks = ((PyObject*)__pyx_t_3);
      __pyx_t_3 = 0;

     907:                   ndim=self.ndim, klass=self.__class__, fastpath=True)]

      /* "pandas/internals.pyx":907
     *
     *         blocks = [make_block(interp_values, self.items, self.ref_items,
     *                   ndim=self.ndim, klass=self.__class__, fastpath=True)]             # <<<<<<<<<<<<<<
     *         return self._maybe_downcast(blocks, downcast)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_ndim, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_klass, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     908:         return self._maybe_downcast(blocks, downcast)

      /* "pandas/internals.pyx":908
     *         blocks = [make_block(interp_values, self.items, self.ref_items,
     *                   ndim=self.ndim, klass=self.__class__, fastpath=True)]
     *         return self._maybe_downcast(blocks, downcast)             # <<<<<<<<<<<<<<
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_maybe_downcast); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_blocks);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_blocks);
      __Pyx_GIVEREF(__pyx_v_blocks);
      __Pyx_INCREF(__pyx_v_downcast);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_downcast);
      __Pyx_GIVEREF(__pyx_v_downcast);
      __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 908; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_7;
      __pyx_t_7 = 0;
      goto __pyx_L0;

     909:

     910:     def take(self, indexer, ref_items, new_axis, axis=1):

    /* "pandas/internals.pyx":910
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_108take(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_108take = {__Pyx_NAMESTR("take"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_108take, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_108take(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_new_axis = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_ref_items,&__pyx_n_s_new_axis,&__pyx_n_s_axis,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)__pyx_int_1));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "take") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_ref_items = values[2];
        __pyx_v_new_axis = values[3];
        __pyx_v_axis = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.take", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_107take(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_ref_items, __pyx_v_new_axis, __pyx_v_axis);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_107take(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_new_axis, PyObject *__pyx_v_axis) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take", 0);

      /* "pandas/internals.pyx":910
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.Block.take", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":910
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */
      __pyx_tuple__278 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_ref_items, __pyx_n_s_new_axis, __pyx_n_s_axis, __pyx_n_s_new_values, __pyx_n_s_ref_locs_2); if (unlikely(!__pyx_tuple__278)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__278);
      __Pyx_GIVEREF(__pyx_tuple__278);
      __pyx_codeobj__279 = (PyObject*)__Pyx_PyCode_New(5, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__278, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_take, 910, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__279)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":910
     *         return self._maybe_downcast(blocks, downcast)
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_108take, 0, __pyx_n_s_Block_take, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__279)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__280);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_take, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__280 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__280)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 910; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__280);
      __Pyx_GIVEREF(__pyx_tuple__280);

     911:         if axis < 1:

      /* "pandas/internals.pyx":911
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):
     *         if axis < 1:             # <<<<<<<<<<<<<<
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *         new_values = com.take_nd(self.values, indexer, axis=axis,
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_1, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 911; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 911; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     912:             raise AssertionError('axis must be at least 1, got %d' % axis)

        /* "pandas/internals.pyx":912
     *     def take(self, indexer, ref_items, new_axis, axis=1):
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)             # <<<<<<<<<<<<<<
     *         new_values = com.take_nd(self.values, indexer, axis=axis,
     *                                  allow_fill=False)
     */
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_axis_must_be_at_least_1_got_d, __pyx_v_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     913:         new_values = com.take_nd(self.values, indexer, axis=axis,

      /* "pandas/internals.pyx":913
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *         new_values = com.take_nd(self.values, indexer, axis=axis,             # <<<<<<<<<<<<<<
     *                                  allow_fill=False)
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_take_nd); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":913
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *         new_values = com.take_nd(self.values, indexer, axis=axis,             # <<<<<<<<<<<<<<
     *                                  allow_fill=False)
     *
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_new_values = __pyx_t_5;
      __pyx_t_5 = 0;

     914:                                  allow_fill=False)

      /* "pandas/internals.pyx":914
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *         new_values = com.take_nd(self.values, indexer, axis=axis,
     *                                  allow_fill=False)             # <<<<<<<<<<<<<<
     *
     *         # need to preserve the ref_locs and just shift them
     */
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_allow_fill, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     915:

     916:         # need to preserve the ref_locs and just shift them

     917:         # GH6121

     918:         ref_locs = None

      /* "pandas/internals.pyx":918
     *         # need to preserve the ref_locs and just shift them
     *         # GH6121
     *         ref_locs = None             # <<<<<<<<<<<<<<
     *         if not new_axis.is_unique:
     *             ref_locs = self._ref_locs
     */
      __Pyx_INCREF(Py_None);
      __pyx_v_ref_locs = Py_None;

     919:         if not new_axis.is_unique:

      /* "pandas/internals.pyx":919
     *         # GH6121
     *         ref_locs = None
     *         if not new_axis.is_unique:             # <<<<<<<<<<<<<<
     *             ref_locs = self._ref_locs
     *
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_axis, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_6 = ((!__pyx_t_2) != 0);
      if (__pyx_t_6) {

     920:             ref_locs = self._ref_locs

        /* "pandas/internals.pyx":920
     *         ref_locs = None
     *         if not new_axis.is_unique:
     *             ref_locs = self._ref_locs             # <<<<<<<<<<<<<<
     *
     *         return [make_block(new_values, self.items, ref_items, ndim=self.ndim,
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 920; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF_SET(__pyx_v_ref_locs, __pyx_t_5);
        __pyx_t_5 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     921:

     922:         return [make_block(new_values, self.items, ref_items, ndim=self.ndim,

      /* "pandas/internals.pyx":922
     *             ref_locs = self._ref_locs
     *
     *         return [make_block(new_values, self.items, ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                            klass=self.__class__, placement=ref_locs, fastpath=True)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ndim, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

      /* "pandas/internals.pyx":922
     *             ref_locs = self._ref_locs
     *
     *         return [make_block(new_values, self.items, ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                            klass=self.__class__, placement=ref_locs, fastpath=True)]
     *
     */
      __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     923:                            klass=self.__class__, placement=ref_locs, fastpath=True)]

      /* "pandas/internals.pyx":923
     *
     *         return [make_block(new_values, self.items, ref_items, ndim=self.ndim,
     *                            klass=self.__class__, placement=ref_locs, fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *     def get_values(self, dtype=None):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 923; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_klass, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_placement, __pyx_v_ref_locs) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     924:

     925:     def get_values(self, dtype=None):

    /* "pandas/internals.pyx":925
     *                            klass=self.__class__, placement=ref_locs, fastpath=True)]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         return self.values
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_110get_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_110get_values = {__Pyx_NAMESTR("get_values"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_110get_values, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_110get_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_values (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_dtype,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_values") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 925; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_dtype = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_values", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 925; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.get_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_109get_values(__pyx_self, __pyx_v_self, __pyx_v_dtype);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_109get_values(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_dtype) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_values", 0);

      /* "pandas/internals.pyx":925
     *                            klass=self.__class__, placement=ref_locs, fastpath=True)]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         return self.values
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block.get_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":925
     *                            klass=self.__class__, placement=ref_locs, fastpath=True)]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         return self.values
     *
     */
      __pyx_tuple__281 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_dtype); if (unlikely(!__pyx_tuple__281)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__281);
      __Pyx_GIVEREF(__pyx_tuple__281);
      __pyx_codeobj__282 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__281, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_values, 925, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__282)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":925
     *                            klass=self.__class__, placement=ref_locs, fastpath=True)]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         return self.values
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_110get_values, 0, __pyx_n_s_Block_get_values, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__282)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__283);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_values, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__283 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__283)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__283);
      __Pyx_GIVEREF(__pyx_tuple__283);

     926:         return self.values

      /* "pandas/internals.pyx":926
     *
     *     def get_values(self, dtype=None):
     *         return self.values             # <<<<<<<<<<<<<<
     *
     *     def get_merge_length(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 926; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     927:

     928:     def get_merge_length(self):

    /* "pandas/internals.pyx":928
     *         return self.values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_112get_merge_length(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_112get_merge_length = {__Pyx_NAMESTR("get_merge_length"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_112get_merge_length, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_112get_merge_length(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_merge_length (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_111get_merge_length(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_111get_merge_length(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_merge_length", 0);

      /* "pandas/internals.pyx":928
     *         return self.values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block.get_merge_length", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":928
     *         return self.values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */
      __pyx_tuple__284 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__284)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__284);
      __Pyx_GIVEREF(__pyx_tuple__284);

      /* "pandas/internals.pyx":928
     *         return self.values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return len(self.values)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_112get_merge_length, 0, __pyx_n_s_Block_get_merge_length, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__285)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_merge_length, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__285 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__284, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_merge_length, 928, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__285)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     929:         return len(self.values)

      /* "pandas/internals.pyx":929
     *
     *     def get_merge_length(self):
     *         return len(self.values)             # <<<<<<<<<<<<<<
     *
     *     def diff(self, n):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 929; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 929; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 929; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     930:

     931:     def diff(self, n):

    /* "pandas/internals.pyx":931
     *         return len(self.values)
     *
     *     def diff(self, n):             # <<<<<<<<<<<<<<
     *         """ return block for the diff of the values """
     *         new_values = com.diff(self.values, n, axis=1)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_114diff(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_113diff[] = " return block for the diff of the values ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_114diff = {__Pyx_NAMESTR("diff"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_114diff, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_113diff)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_114diff(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_n = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("diff (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_n,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_n)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("diff", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "diff") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_n = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("diff", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.diff", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_113diff(__pyx_self, __pyx_v_self, __pyx_v_n);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_113diff(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_n) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("diff", 0);

      /* "pandas/internals.pyx":931
     *         return len(self.values)
     *
     *     def diff(self, n):             # <<<<<<<<<<<<<<
     *         """ return block for the diff of the values """
     *         new_values = com.diff(self.values, n, axis=1)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.diff", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":931
     *         return len(self.values)
     *
     *     def diff(self, n):             # <<<<<<<<<<<<<<
     *         """ return block for the diff of the values """
     *         new_values = com.diff(self.values, n, axis=1)
     */
      __pyx_tuple__286 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_n, __pyx_n_s_new_values); if (unlikely(!__pyx_tuple__286)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__286);
      __Pyx_GIVEREF(__pyx_tuple__286);

      /* "pandas/internals.pyx":931
     *         return len(self.values)
     *
     *     def diff(self, n):             # <<<<<<<<<<<<<<
     *         """ return block for the diff of the values """
     *         new_values = com.diff(self.values, n, axis=1)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_114diff, 0, __pyx_n_s_Block_diff, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__287)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_diff, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__287 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__286, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_diff, 931, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__287)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 931; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     932:         """ return block for the diff of the values """

     933:         new_values = com.diff(self.values, n, axis=1)

      /* "pandas/internals.pyx":933
     *     def diff(self, n):
     *         """ return block for the diff of the values """
     *         new_values = com.diff(self.values, n, axis=1)             # <<<<<<<<<<<<<<
     *         return [make_block(new_values, self.items, self.ref_items,
     *                            ndim=self.ndim, fastpath=True)]
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_diff); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_n);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_n);
      __Pyx_GIVEREF(__pyx_v_n);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_axis, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_new_values = __pyx_t_4;
      __pyx_t_4 = 0;

     934:         return [make_block(new_values, self.items, self.ref_items,

      /* "pandas/internals.pyx":934
     *         """ return block for the diff of the values """
     *         new_values = com.diff(self.values, n, axis=1)
     *         return [make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                            ndim=self.ndim, fastpath=True)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_1 = 0;
      __pyx_t_3 = 0;
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":934
     *         """ return block for the diff of the values """
     *         new_values = com.diff(self.values, n, axis=1)
     *         return [make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                            ndim=self.ndim, fastpath=True)]
     *
     */
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     935:                            ndim=self.ndim, fastpath=True)]

      /* "pandas/internals.pyx":935
     *         new_values = com.diff(self.values, n, axis=1)
     *         return [make_block(new_values, self.items, self.ref_items,
     *                            ndim=self.ndim, fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *     def shift(self, indexer, periods, axis=0):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 935; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_ndim, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     936:

     937:     def shift(self, indexer, periods, axis=0):

    /* "pandas/internals.pyx":937
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods, possibly upcast """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_116shift(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_115shift[] = " shift the block by periods, possibly upcast ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_116shift = {__Pyx_NAMESTR("shift"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_116shift, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_115shift)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_116shift(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_periods = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shift (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_periods,&__pyx_n_s_axis,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)__pyx_int_0));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("shift", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_periods)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("shift", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "shift") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_periods = values[2];
        __pyx_v_axis = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("shift", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.shift", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_115shift(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_periods, __pyx_v_axis);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_115shift(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, PyObject *__pyx_v_periods, PyObject *__pyx_v_axis) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_fill_value = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shift", 0);

      /* "pandas/internals.pyx":937
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods, possibly upcast """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.Block.shift", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":937
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods, possibly upcast """
     *
     */
      __pyx_tuple__288 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_periods, __pyx_n_s_axis, __pyx_n_s_new_values, __pyx_n_s_fill_value); if (unlikely(!__pyx_tuple__288)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__288);
      __Pyx_GIVEREF(__pyx_tuple__288);
      __pyx_codeobj__289 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__288, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shift, 937, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__289)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":937
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods, possibly upcast """
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_116shift, 0, __pyx_n_s_Block_shift, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__289)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__290);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_shift, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__290 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__290)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 937; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__290);
      __Pyx_GIVEREF(__pyx_tuple__290);

     938:         """ shift the block by periods, possibly upcast """

     939:

     940:         new_values = self.values.take(indexer, axis=axis)

      /* "pandas/internals.pyx":940
     *         """ shift the block by periods, possibly upcast """
     *
     *         new_values = self.values.take(indexer, axis=axis)             # <<<<<<<<<<<<<<
     *         # convert integer to float if necessary. need to do a lot more than
     *         # that, handle boolean etc also
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_take); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_new_values = __pyx_t_4;
      __pyx_t_4 = 0;

     941:         # convert integer to float if necessary. need to do a lot more than

     942:         # that, handle boolean etc also

     943:         new_values, fill_value = com._maybe_upcast(new_values)

      /* "pandas/internals.pyx":943
     *         # convert integer to float if necessary. need to do a lot more than
     *         # that, handle boolean etc also
     *         new_values, fill_value = com._maybe_upcast(new_values)             # <<<<<<<<<<<<<<
     *
     *         # 1-d
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_maybe_upcast); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
        PyObject* sequence = __pyx_t_1;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_4 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        #else
        __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        #endif
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext;
        index = 0; __pyx_t_4 = __pyx_t_5(__pyx_t_2); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_4);
        index = 1; __pyx_t_3 = __pyx_t_5(__pyx_t_2); if (unlikely(!__pyx_t_3)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_2), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __Pyx_DECREF_SET(__pyx_v_new_values, __pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_v_fill_value = __pyx_t_3;
      __pyx_t_3 = 0;

     944:

     945:         # 1-d

     946:         if self.ndim == 1:

      /* "pandas/internals.pyx":946
     *
     *         # 1-d
     *         if self.ndim == 1:             # <<<<<<<<<<<<<<
     *             if periods > 0:
     *                 new_values[:periods] = fill_value
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {

     947:             if periods > 0:

        /* "pandas/internals.pyx":947
     *         # 1-d
     *         if self.ndim == 1:
     *             if periods > 0:             # <<<<<<<<<<<<<<
     *                 new_values[:periods] = fill_value
     *             else:
     */
        __pyx_t_3 = PyObject_RichCompare(__pyx_v_periods, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_6) {

     948:                 new_values[:periods] = fill_value

          /* "pandas/internals.pyx":948
     *         if self.ndim == 1:
     *             if periods > 0:
     *                 new_values[:periods] = fill_value             # <<<<<<<<<<<<<<
     *             else:
     *                 new_values[periods:] = fill_value
     */
          if (__Pyx_PyObject_SetSlice(__pyx_v_new_values, __pyx_v_fill_value, 0, 0, NULL, &__pyx_v_periods, NULL, 0, 0, 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 948; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          goto __pyx_L6;
        }
        /*else*/ {

     949:             else:

     950:                 new_values[periods:] = fill_value

          /* "pandas/internals.pyx":950
     *                 new_values[:periods] = fill_value
     *             else:
     *                 new_values[periods:] = fill_value             # <<<<<<<<<<<<<<
     *
     *         # 2-d
     */
          if (__Pyx_PyObject_SetSlice(__pyx_v_new_values, __pyx_v_fill_value, 0, 0, &__pyx_v_periods, NULL, NULL, 0, 0, 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 950; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __pyx_L6:;
        goto __pyx_L5;
      }
      /*else*/ {

     951:

     952:         # 2-d

     953:         else:

     954:             if periods > 0:

        /* "pandas/internals.pyx":954
     *         # 2-d
     *         else:
     *             if periods > 0:             # <<<<<<<<<<<<<<
     *                 new_values[:, :periods] = fill_value
     *             else:
     */
        __pyx_t_3 = PyObject_RichCompare(__pyx_v_periods, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_6) {

     955:                 new_values[:, :periods] = fill_value

          /* "pandas/internals.pyx":955
     *         else:
     *             if periods > 0:
     *                 new_values[:, :periods] = fill_value             # <<<<<<<<<<<<<<
     *             else:
     *                 new_values[:, periods:] = fill_value
     */
          __pyx_t_3 = PySlice_New(Py_None, __pyx_v_periods, Py_None); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_slice__16);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_slice__16);
          __Pyx_GIVEREF(__pyx_slice__16);
          PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          if (unlikely(PyObject_SetItem(__pyx_v_new_values, __pyx_t_1, __pyx_v_fill_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L7;
        }
        /*else*/ {

      /* "pandas/internals.pyx":955
     *         else:
     *             if periods > 0:
     *                 new_values[:, :periods] = fill_value             # <<<<<<<<<<<<<<
     *             else:
     *                 new_values[:, periods:] = fill_value
     */
      __pyx_slice__16 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__16);
      __Pyx_GIVEREF(__pyx_slice__16);

     956:             else:

     957:                 new_values[:, periods:] = fill_value

          /* "pandas/internals.pyx":957
     *                 new_values[:, :periods] = fill_value
     *             else:
     *                 new_values[:, periods:] = fill_value             # <<<<<<<<<<<<<<
     *         return [make_block(new_values, self.items, self.ref_items,
     *                            ndim=self.ndim, fastpath=True)]
     */
          __pyx_t_1 = PySlice_New(__pyx_v_periods, Py_None, Py_None); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_slice__17);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_slice__17);
          __Pyx_GIVEREF(__pyx_slice__17);
          PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          if (unlikely(PyObject_SetItem(__pyx_v_new_values, __pyx_t_3, __pyx_v_fill_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        }
        __pyx_L7:;
      }
      __pyx_L5:;

      /* "pandas/internals.pyx":957
     *                 new_values[:, :periods] = fill_value
     *             else:
     *                 new_values[:, periods:] = fill_value             # <<<<<<<<<<<<<<
     *         return [make_block(new_values, self.items, self.ref_items,
     *                            ndim=self.ndim, fastpath=True)]
     */
      __pyx_slice__17 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__17)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__17);
      __Pyx_GIVEREF(__pyx_slice__17);

     958:         return [make_block(new_values, self.items, self.ref_items,

      /* "pandas/internals.pyx":958
     *             else:
     *                 new_values[:, periods:] = fill_value
     *         return [make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                            ndim=self.ndim, fastpath=True)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_1 = 0;
      __pyx_t_4 = 0;
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);

      /* "pandas/internals.pyx":958
     *             else:
     *                 new_values[:, periods:] = fill_value
     *         return [make_block(new_values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                            ndim=self.ndim, fastpath=True)]
     *
     */
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     959:                            ndim=self.ndim, fastpath=True)]

      /* "pandas/internals.pyx":959
     *                 new_values[:, periods:] = fill_value
     *         return [make_block(new_values, self.items, self.ref_items,
     *                            ndim=self.ndim, fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *     def eval(self, func, other, raise_on_error=True, try_cast=False):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_ndim, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     960:

     961:     def eval(self, func, other, raise_on_error=True, try_cast=False):

    /* "pandas/internals.pyx":961
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def eval(self, func, other, raise_on_error=True, try_cast=False):             # <<<<<<<<<<<<<<
     *         """
     *         evaluate the block; return result block from the result
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_118eval(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_117eval[] = "\n        evaluate the block; return result block from the result\n\n        Parameters\n        ----------\n        func  : how to combine self, other\n        other : a ndarray/object\n        raise_on_error : if True, raise when I can't perform the function,\n            False by default (and just return the data that we had coming in)\n\n        Returns\n        -------\n        a new block, the result of the func\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_118eval = {__Pyx_NAMESTR("eval"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_118eval, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_117eval)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_118eval(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_func = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_v_raise_on_error = 0;
      PyObject *__pyx_v_try_cast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("eval (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_func,&__pyx_n_s_other,&__pyx_n_s_raise_on_error,&__pyx_n_s_try_cast_2,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_func)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("eval", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("eval", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_raise_on_error);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_try_cast_2);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "eval") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_func = values[1];
        __pyx_v_other = values[2];
        __pyx_v_raise_on_error = values[3];
        __pyx_v_try_cast = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("eval", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.eval", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_117eval(__pyx_self, __pyx_v_self, __pyx_v_func, __pyx_v_other, __pyx_v_raise_on_error, __pyx_v_try_cast);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":961
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def eval(self, func, other, raise_on_error=True, try_cast=False):             # <<<<<<<<<<<<<<
     *         """
     *         evaluate the block; return result block from the result
     */

    static PyObject *__pyx_pf_6pandas_9internals_5Block_117eval(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_func, PyObject *__pyx_v_other, PyObject *__pyx_v_raise_on_error, PyObject *__pyx_v_try_cast) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *__pyx_cur_scope;
      PyObject *__pyx_v_axis = NULL;
      int __pyx_v_is_transposed;
      PyObject *__pyx_v_transf = NULL;
      PyObject *__pyx_v_get_result = 0;
      PyObject *__pyx_v_handle_error = 0;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("eval", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_3_eval(__pyx_ptype_6pandas_9internals___pyx_scope_struct_3_eval, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
      __pyx_cur_scope->__pyx_v_func = __pyx_v_func;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_func);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_func);
      __pyx_cur_scope->__pyx_v_other = __pyx_v_other;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_other);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_other);
      __pyx_cur_scope->__pyx_v_raise_on_error = __pyx_v_raise_on_error;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_raise_on_error);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_raise_on_error);

      /* "pandas/internals.pyx":961
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def eval(self, func, other, raise_on_error=True, try_cast=False):             # <<<<<<<<<<<<<<
     *         """
     *         evaluate the block; return result block from the result
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.Block.eval", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_axis);
      __Pyx_XDECREF(__pyx_v_transf);
      __Pyx_XDECREF(__pyx_v_get_result);
      __Pyx_XDECREF(__pyx_v_handle_error);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":961
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def eval(self, func, other, raise_on_error=True, try_cast=False):             # <<<<<<<<<<<<<<
     *         """
     *         evaluate the block; return result block from the result
     */
      __pyx_tuple__291 = PyTuple_Pack(15, __pyx_n_s_self, __pyx_n_s_func, __pyx_n_s_other, __pyx_n_s_raise_on_error, __pyx_n_s_try_cast_2, __pyx_n_s_values, __pyx_n_s_axis, __pyx_n_s_is_transposed, __pyx_n_s_transf, __pyx_n_s_get_result, __pyx_n_s_get_result, __pyx_n_s_handle_error, __pyx_n_s_handle_error, __pyx_n_s_result, __pyx_n_s_detail); if (unlikely(!__pyx_tuple__291)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__291);
      __Pyx_GIVEREF(__pyx_tuple__291);
      __pyx_codeobj__292 = (PyObject*)__Pyx_PyCode_New(5, 0, 15, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__291, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_eval, 961, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__292)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":961
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def eval(self, func, other, raise_on_error=True, try_cast=False):             # <<<<<<<<<<<<<<
     *         """
     *         evaluate the block; return result block from the result
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_118eval, 0, __pyx_n_s_Block_eval, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__292)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__293);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_eval, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__293 = PyTuple_Pack(2, ((PyObject *)Py_True), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__293)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__293);
      __Pyx_GIVEREF(__pyx_tuple__293);

    /* "pandas/internals.pyx":961
     *                            ndim=self.ndim, fastpath=True)]
     *
     *     def eval(self, func, other, raise_on_error=True, try_cast=False):             # <<<<<<<<<<<<<<
     *         """
     *         evaluate the block; return result block from the result
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval {
      PyObject_HEAD
      PyObject *__pyx_v_detail;
      PyObject *__pyx_v_func;
      PyObject *__pyx_v_other;
      PyObject *__pyx_v_raise_on_error;
      PyObject *__pyx_v_self;
      PyObject *__pyx_v_values;
    };

     962:         """

     963:         evaluate the block; return result block from the result

     964:

     965:         Parameters

     966:         ----------

     967:         func  : how to combine self, other

     968:         other : a ndarray/object

     969:         raise_on_error : if True, raise when I can't perform the function,

     970:             False by default (and just return the data that we had coming in)

     971:

     972:         Returns

     973:         -------

     974:         a new block, the result of the func

     975:         """

     976:         values = self.values

      /* "pandas/internals.pyx":976
     *         a new block, the result of the func
     *         """
     *         values = self.values             # <<<<<<<<<<<<<<
     *
     *         # see if we can align other
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 976; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_cur_scope->__pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     977:

     978:         # see if we can align other

     979:         if hasattr(other, 'reindex_axis'):

      /* "pandas/internals.pyx":979
     *
     *         # see if we can align other
     *         if hasattr(other, 'reindex_axis'):             # <<<<<<<<<<<<<<
     *             axis = getattr(other, '_info_axis_number', 0)
     *             other = other.reindex_axis(
     */
      __pyx_t_1 = __pyx_cur_scope->__pyx_v_other;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_2 = PyObject_HasAttr(__pyx_t_1, __pyx_n_s_reindex_axis); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 979; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     980:             axis = getattr(other, '_info_axis_number', 0)

        /* "pandas/internals.pyx":980
     *         # see if we can align other
     *         if hasattr(other, 'reindex_axis'):
     *             axis = getattr(other, '_info_axis_number', 0)             # <<<<<<<<<<<<<<
     *             other = other.reindex_axis(
     *                 self.items, axis=axis, copy=False).values
     */
        __pyx_t_1 = __pyx_cur_scope->__pyx_v_other;
        __Pyx_INCREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_GetAttr3(__pyx_t_1, __pyx_n_s_info_axis_number, __pyx_int_0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_axis = __pyx_t_4;
        __pyx_t_4 = 0;

     981:             other = other.reindex_axis(

        /* "pandas/internals.pyx":981
     *         if hasattr(other, 'reindex_axis'):
     *             axis = getattr(other, '_info_axis_number', 0)
     *             other = other.reindex_axis(             # <<<<<<<<<<<<<<
     *                 self.items, axis=axis, copy=False).values
     *
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_other, __pyx_n_s_reindex_axis); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 981; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);

        /* "pandas/internals.pyx":981
     *         if hasattr(other, 'reindex_axis'):
     *             axis = getattr(other, '_info_axis_number', 0)
     *             other = other.reindex_axis(             # <<<<<<<<<<<<<<
     *                 self.items, axis=axis, copy=False).values
     *
     */
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 981; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 981; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":981
     *         if hasattr(other, 'reindex_axis'):
     *             axis = getattr(other, '_info_axis_number', 0)
     *             other = other.reindex_axis(             # <<<<<<<<<<<<<<
     *                 self.items, axis=axis, copy=False).values
     *
     */
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 981; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     982:                 self.items, axis=axis, copy=False).values

        /* "pandas/internals.pyx":982
     *             axis = getattr(other, '_info_axis_number', 0)
     *             other = other.reindex_axis(
     *                 self.items, axis=axis, copy=False).values             # <<<<<<<<<<<<<<
     *
     *         # make sure that we can broadcast
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 982; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":982
     *             axis = getattr(other, '_info_axis_number', 0)
     *             other = other.reindex_axis(
     *                 self.items, axis=axis, copy=False).values             # <<<<<<<<<<<<<<
     *
     *         # make sure that we can broadcast
     */
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 981; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_copy, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 981; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":982
     *             axis = getattr(other, '_info_axis_number', 0)
     *             other = other.reindex_axis(
     *                 self.items, axis=axis, copy=False).values             # <<<<<<<<<<<<<<
     *
     *         # make sure that we can broadcast
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 982; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_other);
        __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_other, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     983:

     984:         # make sure that we can broadcast

     985:         is_transposed = False

      /* "pandas/internals.pyx":985
     *
     *         # make sure that we can broadcast
     *         is_transposed = False             # <<<<<<<<<<<<<<
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):
     *             if values.ndim != other.ndim:
     */
      __pyx_v_is_transposed = 0;

     986:         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):

      /* "pandas/internals.pyx":986
     *         # make sure that we can broadcast
     *         is_transposed = False
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):             # <<<<<<<<<<<<<<
     *             if values.ndim != other.ndim:
     *                     is_transposed = True
     */
      __pyx_t_1 = __pyx_cur_scope->__pyx_v_other;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_3 = PyObject_HasAttr(__pyx_t_1, __pyx_n_s_ndim); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 986; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if ((__pyx_t_3 != 0)) {
        __pyx_t_1 = __pyx_cur_scope->__pyx_v_values;
        __Pyx_INCREF(__pyx_t_1);
        __pyx_t_2 = PyObject_HasAttr(__pyx_t_1, __pyx_n_s_ndim); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 986; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_7 = (__pyx_t_2 != 0);
      } else {
        __pyx_t_7 = (__pyx_t_3 != 0);
      }
      if (__pyx_t_7) {

     987:             if values.ndim != other.ndim:

        /* "pandas/internals.pyx":987
     *         is_transposed = False
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):
     *             if values.ndim != other.ndim:             # <<<<<<<<<<<<<<
     *                     is_transposed = True
     *             else:
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_other, __pyx_n_s_ndim); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = PyObject_RichCompare(__pyx_t_1, __pyx_t_6, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__pyx_t_7) {

     988:                     is_transposed = True

          /* "pandas/internals.pyx":988
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):
     *             if values.ndim != other.ndim:
     *                     is_transposed = True             # <<<<<<<<<<<<<<
     *             else:
     *                 if values.shape == other.shape[::-1]:
     */
          __pyx_v_is_transposed = 1;
          goto __pyx_L5;
        }
        /*else*/ {

     989:             else:

     990:                 if values.shape == other.shape[::-1]:

          /* "pandas/internals.pyx":990
     *                     is_transposed = True
     *             else:
     *                 if values.shape == other.shape[::-1]:             # <<<<<<<<<<<<<<
     *                     is_transposed = True
     *                 elif values.shape[0] == other.shape[-1]:
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_other, __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_1 = PyObject_GetItem(__pyx_t_6, __pyx_slice__18); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 990; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_RichCompare(__pyx_t_5, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (__pyx_t_7) {

      /* "pandas/internals.pyx":990
     *                     is_transposed = True
     *             else:
     *                 if values.shape == other.shape[::-1]:             # <<<<<<<<<<<<<<
     *                     is_transposed = True
     *                 elif values.shape[0] == other.shape[-1]:
     */
      __pyx_slice__18 = PySlice_New(Py_None, Py_None, __pyx_int_neg_1); if (unlikely(!__pyx_slice__18)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__18);
      __Pyx_GIVEREF(__pyx_slice__18);

     991:                     is_transposed = True

            /* "pandas/internals.pyx":991
     *             else:
     *                 if values.shape == other.shape[::-1]:
     *                     is_transposed = True             # <<<<<<<<<<<<<<
     *                 elif values.shape[0] == other.shape[-1]:
     *                     is_transposed = True
     */
            __pyx_v_is_transposed = 1;
            goto __pyx_L6;
          }

     992:                 elif values.shape[0] == other.shape[-1]:

          /* "pandas/internals.pyx":992
     *                 if values.shape == other.shape[::-1]:
     *                     is_transposed = True
     *                 elif values.shape[0] == other.shape[-1]:             # <<<<<<<<<<<<<<
     *                     is_transposed = True
     *                 else:
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_6, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 992; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_other, __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_6, -1, long, 1, __Pyx_PyInt_From_long, 0, 1, 1); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 992; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_RichCompare(__pyx_t_1, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (__pyx_t_7) {

     993:                     is_transposed = True

            /* "pandas/internals.pyx":993
     *                     is_transposed = True
     *                 elif values.shape[0] == other.shape[-1]:
     *                     is_transposed = True             # <<<<<<<<<<<<<<
     *                 else:
     *                     # this is a broadcast error heree
     */
            __pyx_v_is_transposed = 1;
            goto __pyx_L6;
          }
          /*else*/ {

     994:                 else:

     995:                     # this is a broadcast error heree

     996:                     raise ValueError("cannot broadcast shape [%s] with block "

            /* "pandas/internals.pyx":996
     *                 else:
     *                     # this is a broadcast error heree
     *                     raise ValueError("cannot broadcast shape [%s] with block "             # <<<<<<<<<<<<<<
     *                                      "values [%s]" % (values.T.shape,
     *                                                       other.shape))
     */
            __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 996; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6);
            __Pyx_GIVEREF(__pyx_t_6);
            __pyx_t_6 = 0;
            __pyx_t_6 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 996; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_Raise(__pyx_t_6, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 996; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          __pyx_L6:;
        }
        __pyx_L5:;
        goto __pyx_L4;
      }
      __pyx_L4:;

     997:                                      "values [%s]" % (values.T.shape,

            /* "pandas/internals.pyx":997
     *                     # this is a broadcast error heree
     *                     raise ValueError("cannot broadcast shape [%s] with block "
     *                                      "values [%s]" % (values.T.shape,             # <<<<<<<<<<<<<<
     *                                                       other.shape))
     *
     */
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_values, __pyx_n_s_T); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

            /* "pandas/internals.pyx":997
     *                     # this is a broadcast error heree
     *                     raise ValueError("cannot broadcast shape [%s] with block "
     *                                      "values [%s]" % (values.T.shape,             # <<<<<<<<<<<<<<
     *                                                       other.shape))
     *
     */
            __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
            __Pyx_GIVEREF(__pyx_t_5);
            PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_6);
            __Pyx_GIVEREF(__pyx_t_6);
            __pyx_t_5 = 0;
            __pyx_t_6 = 0;
            __pyx_t_6 = __Pyx_PyString_Format(__pyx_kp_s_cannot_broadcast_shape_s_with_bl, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     998:                                                       other.shape))

            /* "pandas/internals.pyx":998
     *                     raise ValueError("cannot broadcast shape [%s] with block "
     *                                      "values [%s]" % (values.T.shape,
     *                                                       other.shape))             # <<<<<<<<<<<<<<
     *
     *         transf = (lambda x: x.T) if is_transposed else (lambda x: x)
     */
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_other, __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);

     999:

     1000:         transf = (lambda x: x.T) if is_transposed else (lambda x: x)

    /* "pandas/internals.pyx":1000
     *                                                       other.shape))
     *
     *         transf = (lambda x: x.T) if is_transposed else (lambda x: x)             # <<<<<<<<<<<<<<
     *
     *         # coerce/transpose the args if needed
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_4lambda3(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_4eval_4lambda3 = {__Pyx_NAMESTR("lambda3"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_4eval_4lambda3, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_4lambda3(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda3 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda3(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda3(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda3", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_T); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.Block.eval.lambda3", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_5lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_4eval_5lambda4 = {__Pyx_NAMESTR("lambda4"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_4eval_5lambda4, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_5lambda4(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda4 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda4(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda4(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda4", 0);
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_x);
      __pyx_r = __pyx_v_x;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1000
     *                                                       other.shape))
     *
     *         transf = (lambda x: x.T) if is_transposed else (lambda x: x)             # <<<<<<<<<<<<<<
     *
     *         # coerce/transpose the args if needed
     */
      if ((__pyx_v_is_transposed != 0)) {
        __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_4eval_4lambda3, 0, __pyx_n_s_Block_eval_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = __pyx_t_1;
        __pyx_t_1 = 0;
      } else {
        __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_4eval_5lambda4, 0, __pyx_n_s_Block_eval_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = __pyx_t_1;
        __pyx_t_1 = 0;
      }
      __pyx_v_transf = __pyx_t_6;
      __pyx_t_6 = 0;

     1001:

     1002:         # coerce/transpose the args if needed

     1003:         values, other = self._try_coerce_args(transf(values), other)

      /* "pandas/internals.pyx":1003
     *
     *         # coerce/transpose the args if needed
     *         values, other = self._try_coerce_args(transf(values), other)             # <<<<<<<<<<<<<<
     *
     *         # get the result, may need to transpose the other
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_coerce_args); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_values);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_values);
      __pyx_t_5 = PyObject_Call(__pyx_v_transf, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_cur_scope->__pyx_v_other);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_other);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) {
        PyObject* sequence = __pyx_t_5;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_6 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_6);
        #else
        __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        #endif
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_8 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_4); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_6);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L8_unpacking_done;
        __pyx_L7_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_8 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L8_unpacking_done:;
      }
      __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_values);
      __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_values, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_other);
      __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_other, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;

     1004:

     1005:         # get the result, may need to transpose the other

     1006:         def get_result(other):

    /* "pandas/internals.pyx":1006
     *
     *         # get the result, may need to transpose the other
     *         def get_result(other):             # <<<<<<<<<<<<<<
     *             return self._try_coerce_result(func(values, other))
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_1get_result(PyObject *__pyx_self, PyObject *__pyx_v_other); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_4eval_1get_result = {__Pyx_NAMESTR("get_result"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_4eval_1get_result, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_1get_result(PyObject *__pyx_self, PyObject *__pyx_v_other) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_result (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_4eval_get_result(__pyx_self, ((PyObject *)__pyx_v_other));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_4eval_get_result(PyObject *__pyx_self, PyObject *__pyx_v_other) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_result", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":1006
     *
     *         # get the result, may need to transpose the other
     *         def get_result(other):             # <<<<<<<<<<<<<<
     *             return self._try_coerce_result(func(values, other))
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.Block.eval.get_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1006
     *
     *         # get the result, may need to transpose the other
     *         def get_result(other):             # <<<<<<<<<<<<<<
     *             return self._try_coerce_result(func(values, other))
     *
     */
      __pyx_tuple__19 = PyTuple_Pack(1, __pyx_n_s_other); if (unlikely(!__pyx_tuple__19)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1006; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__19);
      __Pyx_GIVEREF(__pyx_tuple__19);

      /* "pandas/internals.pyx":1006
     *
     *         # get the result, may need to transpose the other
     *         def get_result(other):             # <<<<<<<<<<<<<<
     *             return self._try_coerce_result(func(values, other))
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_4eval_1get_result, 0, __pyx_n_s_Block_eval_locals_get_result, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__20)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1006; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_v_get_result = __pyx_t_5;
      __pyx_t_5 = 0;
      __pyx_codeobj__20 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__19, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_result, 1006, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__20)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1006; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1007:             return self._try_coerce_result(func(values, other))

      /* "pandas/internals.pyx":1007
     *         # get the result, may need to transpose the other
     *         def get_result(other):
     *             return self._try_coerce_result(func(values, other))             # <<<<<<<<<<<<<<
     *
     *         # error handler if we have an issue operating with the function
     */
      __Pyx_XDECREF(__pyx_r);
      if (unlikely(!__pyx_cur_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_coerce_result); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (unlikely(!__pyx_cur_scope->__pyx_v_func)) { __Pyx_RaiseClosureNameError("func"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (unlikely(!__pyx_cur_scope->__pyx_v_values)) { __Pyx_RaiseClosureNameError("values"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_v_values);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_values);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_t_3 = PyObject_Call(__pyx_cur_scope->__pyx_v_func, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1008:

     1009:         # error handler if we have an issue operating with the function

     1010:         def handle_error():

    /* "pandas/internals.pyx":1010
     *
     *         # error handler if we have an issue operating with the function
     *         def handle_error():             # <<<<<<<<<<<<<<
     *
     *             if raise_on_error:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_3handle_error(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_4eval_3handle_error = {__Pyx_NAMESTR("handle_error"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_4eval_3handle_error, METH_NOARGS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_4eval_3handle_error(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("handle_error (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_4eval_2handle_error(__pyx_self);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_4eval_2handle_error(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *__pyx_outer_scope;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("handle_error", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_3_eval *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":1010
     *
     *         # error handler if we have an issue operating with the function
     *         def handle_error():             # <<<<<<<<<<<<<<
     *
     *             if raise_on_error:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.Block.eval.handle_error", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1010
     *
     *         # error handler if we have an issue operating with the function
     *         def handle_error():             # <<<<<<<<<<<<<<
     *
     *             if raise_on_error:
     */
      __pyx_tuple__21 = PyTuple_Pack(1, __pyx_n_s_result); if (unlikely(!__pyx_tuple__21)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1010; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__21);
      __Pyx_GIVEREF(__pyx_tuple__21);

      /* "pandas/internals.pyx":1010
     *
     *         # error handler if we have an issue operating with the function
     *         def handle_error():             # <<<<<<<<<<<<<<
     *
     *             if raise_on_error:
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_4eval_3handle_error, 0, __pyx_n_s_Block_eval_locals_handle_error, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__22)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1010; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_v_handle_error = __pyx_t_5;
      __pyx_t_5 = 0;
      __pyx_codeobj__22 = (PyObject*)__Pyx_PyCode_New(0, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__21, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_handle_error, 1010, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__22)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1010; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1011:

     1012:             if raise_on_error:

      /* "pandas/internals.pyx":1012
     *         def handle_error():
     *
     *             if raise_on_error:             # <<<<<<<<<<<<<<
     *                 raise TypeError('Could not operate %s with block values %s'
     *                                 % (repr(other), str(detail)))
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_raise_on_error)) { __Pyx_RaiseClosureNameError("raise_on_error"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1012; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_raise_on_error); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1012; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     1013:                 raise TypeError('Could not operate %s with block values %s'

        /* "pandas/internals.pyx":1013
     *
     *             if raise_on_error:
     *                 raise TypeError('Could not operate %s with block values %s'             # <<<<<<<<<<<<<<
     *                                 % (repr(other), str(detail)))
     *             else:
     */
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      /*else*/ {

     1014:                                 % (repr(other), str(detail)))

        /* "pandas/internals.pyx":1014
     *             if raise_on_error:
     *                 raise TypeError('Could not operate %s with block values %s'
     *                                 % (repr(other), str(detail)))             # <<<<<<<<<<<<<<
     *             else:
     *                 # return the values
     */
        if (unlikely(!__pyx_cur_scope->__pyx_v_other)) { __Pyx_RaiseClosureNameError("other"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_2 = __pyx_cur_scope->__pyx_v_other;
        __Pyx_INCREF(__pyx_t_2);
        __pyx_t_3 = PyObject_Repr(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (unlikely(!__pyx_cur_scope->__pyx_v_detail)) { __Pyx_RaiseClosureNameError("detail"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_detail);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_v_detail);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_detail);
        __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)(&PyString_Type))), __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_3 = 0;
        __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_Could_not_operate_s_with_block_v, __pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1014; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1015:             else:

     1016:                 # return the values

     1017:                 result = np.empty(values.shape, dtype='O')

        /* "pandas/internals.pyx":1017
     *             else:
     *                 # return the values
     *                 result = np.empty(values.shape, dtype='O')             # <<<<<<<<<<<<<<
     *                 result.fill(np.nan)
     *                 return result
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_empty); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (unlikely(!__pyx_cur_scope->__pyx_v_values)) { __Pyx_RaiseClosureNameError("values"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_n_s_O) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_result = __pyx_t_5;
        __pyx_t_5 = 0;

     1018:                 result.fill(np.nan)

        /* "pandas/internals.pyx":1018
     *                 # return the values
     *                 result = np.empty(values.shape, dtype='O')
     *                 result.fill(np.nan)             # <<<<<<<<<<<<<<
     *                 return result
     *
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_fill); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_nan); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     1019:                 return result

        /* "pandas/internals.pyx":1019
     *                 result = np.empty(values.shape, dtype='O')
     *                 result.fill(np.nan)
     *                 return result             # <<<<<<<<<<<<<<
     *
     *         # get the result
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_result);
        __pyx_r = __pyx_v_result;
        goto __pyx_L0;
      }

     1020:

     1021:         # get the result

     1022:         try:

      /* "pandas/internals.pyx":1022
     *
     *         # get the result
     *         try:             # <<<<<<<<<<<<<<
     *             result = get_result(other)
     *
     */
      {
        /*try:*/ {

     1023:             result = get_result(other)

          /* "pandas/internals.pyx":1023
     *         # get the result
     *         try:
     *             result = get_result(other)             # <<<<<<<<<<<<<<
     *
     *         # if we have an invalid shape/broadcast error
     */
          __pyx_t_5 = __pyx_cur_scope->__pyx_v_other;
          __Pyx_INCREF(__pyx_t_5);
          __pyx_t_6 = __pyx_pf_6pandas_9internals_5Block_4eval_get_result(__pyx_v_get_result, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1023; __pyx_clineno = __LINE__; goto __pyx_L9_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_v_result = __pyx_t_6;
          __pyx_t_6 = 0;
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;
        goto __pyx_L16_try_end;
        __pyx_L9_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;

     1024:

     1025:         # if we have an invalid shape/broadcast error

     1026:         # GH4576, so raise instead of allowing to pass through

     1027:         except ValueError as detail:

        /* "pandas/internals.pyx":1027
     *         # if we have an invalid shape/broadcast error
     *         # GH4576, so raise instead of allowing to pass through
     *         except ValueError as detail:             # <<<<<<<<<<<<<<
     *             raise
     *         except Exception as detail:
     */
        __pyx_t_12 = PyErr_ExceptionMatches(__pyx_builtin_ValueError);
        if (__pyx_t_12) {
          __Pyx_AddTraceback("pandas.internals.Block.eval", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_5, &__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1027; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_cur_scope->__pyx_v_detail = __pyx_t_5;

     1028:             raise

          /* "pandas/internals.pyx":1028
     *         # GH4576, so raise instead of allowing to pass through
     *         except ValueError as detail:
     *             raise             # <<<<<<<<<<<<<<
     *         except Exception as detail:
     *             result = handle_error()
     */
          __Pyx_GIVEREF(__pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_5);
          __Pyx_XGIVEREF(__pyx_t_1);
          __Pyx_ErrRestore(__pyx_t_6, __pyx_t_5, __pyx_t_1);
          __pyx_t_6 = 0; __pyx_t_5 = 0; __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1028; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L10_exception_handled;
        }

     1029:         except Exception as detail:

        /* "pandas/internals.pyx":1029
     *         except ValueError as detail:
     *             raise
     *         except Exception as detail:             # <<<<<<<<<<<<<<
     *             result = handle_error()
     *
     */
        __pyx_t_12 = PyErr_ExceptionMatches(__pyx_builtin_Exception);
        if (__pyx_t_12) {
          __Pyx_AddTraceback("pandas.internals.Block.eval", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_5, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1029; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_cur_scope->__pyx_v_detail = __pyx_t_5;

     1030:             result = handle_error()

          /* "pandas/internals.pyx":1030
     *             raise
     *         except Exception as detail:
     *             result = handle_error()             # <<<<<<<<<<<<<<
     *
     *         # technically a broadcast error in numpy can 'work' by returning a
     */
          __pyx_t_4 = __pyx_pf_6pandas_9internals_5Block_4eval_2handle_error(__pyx_v_handle_error); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1030; __pyx_clineno = __LINE__; goto __pyx_L11_except_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_XDECREF_SET(__pyx_v_result, __pyx_t_4);
          __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L10_exception_handled;
        }
        goto __pyx_L11_except_error;
        __pyx_L11_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
        goto __pyx_L1_error;
        __pyx_L10_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_10);
        __Pyx_XGIVEREF(__pyx_t_11);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_10, __pyx_t_11);
        __pyx_L16_try_end:;
      }

     1031:

     1032:         # technically a broadcast error in numpy can 'work' by returning a

     1033:         # boolean False

     1034:         if not isinstance(result, np.ndarray):

      /* "pandas/internals.pyx":1034
     *         # technically a broadcast error in numpy can 'work' by returning a
     *         # boolean False
     *         if not isinstance(result, np.ndarray):             # <<<<<<<<<<<<<<
     *             if not isinstance(result, np.ndarray):
     *
     */
      __pyx_t_7 = __Pyx_TypeCheck(__pyx_v_result, ((PyObject*)__pyx_ptype_5numpy_ndarray));
      __pyx_t_3 = ((!(__pyx_t_7 != 0)) != 0);
      if (__pyx_t_3) {

     1035:             if not isinstance(result, np.ndarray):

        /* "pandas/internals.pyx":1035
     *         # boolean False
     *         if not isinstance(result, np.ndarray):
     *             if not isinstance(result, np.ndarray):             # <<<<<<<<<<<<<<
     *
     *                 # differentiate between an invalid ndarray-ndarray comparison
     */
        __pyx_t_3 = __Pyx_TypeCheck(__pyx_v_result, ((PyObject*)__pyx_ptype_5numpy_ndarray));
        __pyx_t_7 = ((!(__pyx_t_3 != 0)) != 0);
        if (__pyx_t_7) {

     1036:

     1037:                 # differentiate between an invalid ndarray-ndarray comparison

     1038:                 # and an invalid type comparison

     1039:                 if isinstance(values, np.ndarray) and is_list_like(other):

          /* "pandas/internals.pyx":1039
     *                 # differentiate between an invalid ndarray-ndarray comparison
     *                 # and an invalid type comparison
     *                 if isinstance(values, np.ndarray) and is_list_like(other):             # <<<<<<<<<<<<<<
     *                     raise ValueError('Invalid broadcasting comparison [%s] '
     *                                      'with block values' % repr(other))
     */
          __pyx_t_6 = __pyx_cur_scope->__pyx_v_values;
          __Pyx_INCREF(__pyx_t_6);
          __pyx_t_7 = __Pyx_TypeCheck(__pyx_t_6, ((PyObject*)__pyx_ptype_5numpy_ndarray));
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (__pyx_t_7) {
            __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_INCREF(__pyx_cur_scope->__pyx_v_other);
            PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_cur_scope->__pyx_v_other);
            __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_other);
            __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_2 = __pyx_t_3;
          } else {
            __pyx_t_2 = __pyx_t_7;
          }
          if (__pyx_t_2) {

     1040:                     raise ValueError('Invalid broadcasting comparison [%s] '

            /* "pandas/internals.pyx":1040
     *                 # and an invalid type comparison
     *                 if isinstance(values, np.ndarray) and is_list_like(other):
     *                     raise ValueError('Invalid broadcasting comparison [%s] '             # <<<<<<<<<<<<<<
     *                                      'with block values' % repr(other))
     *
     */
            __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
            __Pyx_GIVEREF(__pyx_t_1);
            __pyx_t_1 = 0;
            __pyx_t_1 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_Raise(__pyx_t_1, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }

     1041:                                      'with block values' % repr(other))

            /* "pandas/internals.pyx":1041
     *                 if isinstance(values, np.ndarray) and is_list_like(other):
     *                     raise ValueError('Invalid broadcasting comparison [%s] '
     *                                      'with block values' % repr(other))             # <<<<<<<<<<<<<<
     *
     *                 raise TypeError('Could not compare [%s] with block values'
     */
            __pyx_t_1 = __pyx_cur_scope->__pyx_v_other;
            __Pyx_INCREF(__pyx_t_1);
            __pyx_t_5 = PyObject_Repr(__pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Invalid_broadcasting_comparison, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     1042:

     1043:                 raise TypeError('Could not compare [%s] with block values'

          /* "pandas/internals.pyx":1043
     *                                      'with block values' % repr(other))
     *
     *                 raise TypeError('Could not compare [%s] with block values'             # <<<<<<<<<<<<<<
     *                                 % repr(other))
     *
     */
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1043; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1043; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_Raise(__pyx_t_1, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1043; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        goto __pyx_L21;
      }
      __pyx_L21:;

     1044:                                 % repr(other))

          /* "pandas/internals.pyx":1044
     *
     *                 raise TypeError('Could not compare [%s] with block values'
     *                                 % repr(other))             # <<<<<<<<<<<<<<
     *
     *         # transpose if needed
     */
          __pyx_t_1 = __pyx_cur_scope->__pyx_v_other;
          __Pyx_INCREF(__pyx_t_1);
          __pyx_t_5 = PyObject_Repr(__pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Could_not_compare_s_with_block_v, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     1045:

     1046:         # transpose if needed

     1047:         result = transf(result)

      /* "pandas/internals.pyx":1047
     *
     *         # transpose if needed
     *         result = transf(result)             # <<<<<<<<<<<<<<
     *
     *         # try to cast if requested
     */
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1047; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_result);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result);
      __Pyx_GIVEREF(__pyx_v_result);
      __pyx_t_5 = PyObject_Call(__pyx_v_transf, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1047; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_5);
      __pyx_t_5 = 0;

     1048:

     1049:         # try to cast if requested

     1050:         if try_cast:

      /* "pandas/internals.pyx":1050
     *
     *         # try to cast if requested
     *         if try_cast:             # <<<<<<<<<<<<<<
     *             result = self._try_cast_result(result)
     *
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_try_cast); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1050; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     1051:             result = self._try_cast_result(result)

        /* "pandas/internals.pyx":1051
     *         # try to cast if requested
     *         if try_cast:
     *             result = self._try_cast_result(result)             # <<<<<<<<<<<<<<
     *
     *         return [make_block(result, self.items, self.ref_items, ndim=self.ndim,
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_cast_result); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1051; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1051; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1051; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_6);
        __pyx_t_6 = 0;
        goto __pyx_L24;
      }
      __pyx_L24:;

     1052:

     1053:         return [make_block(result, self.items, self.ref_items, ndim=self.ndim,

      /* "pandas/internals.pyx":1053
     *             result = self._try_cast_result(result)
     *
     *         return [make_block(result, self.items, self.ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                            fastpath=True)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_result);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result);
      __Pyx_GIVEREF(__pyx_v_result);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_1 = 0;
      __pyx_t_5 = 0;
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_ndim, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "pandas/internals.pyx":1053
     *             result = self._try_cast_result(result)
     *
     *         return [make_block(result, self.items, self.ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                            fastpath=True)]
     *
     */
      __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     1054:                            fastpath=True)]

      /* "pandas/internals.pyx":1054
     *
     *         return [make_block(result, self.items, self.ref_items, ndim=self.ndim,
     *                            fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,
     */
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1055:

     1056:     def where(self, other, cond, align=True, raise_on_error=True,

    /* "pandas/internals.pyx":1056
     *                            fastpath=True)]
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,             # <<<<<<<<<<<<<<
     *               try_cast=False):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_120where(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_5Block_119where[] = "\n        evaluate the block; return result block(s) from the result\n\n        Parameters\n        ----------\n        other : a ndarray/object\n        cond  : the condition to respect\n        align : boolean, perform alignment on other/cond\n        raise_on_error : if True, raise when I can't perform the function,\n            False by default (and just return the data that we had coming in)\n\n        Returns\n        -------\n        a new block(s), the result of the func\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_120where = {__Pyx_NAMESTR("where"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_120where, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_5Block_119where)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_120where(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_v_cond = 0;
      PyObject *__pyx_v_align = 0;
      PyObject *__pyx_v_raise_on_error = 0;
      PyObject *__pyx_v_try_cast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("where (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,&__pyx_n_s_cond,&__pyx_n_s_align,&__pyx_n_s_raise_on_error,&__pyx_n_s_try_cast_2,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_True));

      /* "pandas/internals.pyx":1056
     *                            fastpath=True)]
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,             # <<<<<<<<<<<<<<
     *               try_cast=False):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":1056
     *                            fastpath=True)]
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,             # <<<<<<<<<<<<<<
     *               try_cast=False):
     *         """
     */

    static PyObject *__pyx_pf_6pandas_9internals_5Block_119where(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other, PyObject *__pyx_v_cond, PyObject *__pyx_v_align, PyObject *__pyx_v_raise_on_error, PyObject *__pyx_v_try_cast) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_4_where *__pyx_cur_scope;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_axis = NULL;
      int __pyx_v_is_transposed;
      PyObject *__pyx_v_func = 0;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_result_blocks = NULL;
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_slices = NULL;
      PyObject *__pyx_v_r = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("where", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_4_where *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_4_where(__pyx_ptype_6pandas_9internals___pyx_scope_struct_4_where, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
      __pyx_cur_scope->__pyx_v_raise_on_error = __pyx_v_raise_on_error;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_raise_on_error);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_raise_on_error);
      __Pyx_INCREF(__pyx_v_other);
      __Pyx_INCREF(__pyx_v_cond);

      /* "pandas/internals.pyx":1056
     *                            fastpath=True)]
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,             # <<<<<<<<<<<<<<
     *               try_cast=False):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.Block.where", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_axis);
      __Pyx_XDECREF(__pyx_v_func);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_result_blocks);
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_slices);
      __Pyx_XDECREF(__pyx_v_r);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_other);
      __Pyx_XDECREF(__pyx_v_cond);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1056
     *                            fastpath=True)]
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,             # <<<<<<<<<<<<<<
     *               try_cast=False):
     *         """
     */
      __pyx_tuple__294 = PyTuple_Pack(19, __pyx_n_s_self, __pyx_n_s_other, __pyx_n_s_cond, __pyx_n_s_align, __pyx_n_s_raise_on_error, __pyx_n_s_try_cast_2, __pyx_n_s_values, __pyx_n_s_axis, __pyx_n_s_is_transposed, __pyx_n_s_func, __pyx_n_s_func, __pyx_n_s_result, __pyx_n_s_mask, __pyx_n_s_result_blocks, __pyx_n_s_m, __pyx_n_s_items, __pyx_n_s_slices, __pyx_n_s_r, __pyx_n_s_i); if (unlikely(!__pyx_tuple__294)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__294);
      __Pyx_GIVEREF(__pyx_tuple__294);
      __pyx_codeobj__295 = (PyObject*)__Pyx_PyCode_New(6, 0, 19, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__294, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_where, 1056, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__295)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1056
     *                            fastpath=True)]
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,             # <<<<<<<<<<<<<<
     *               try_cast=False):
     *         """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_120where, 0, __pyx_n_s_Block_where, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__295)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__296);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_where, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__296 = PyTuple_Pack(3, ((PyObject *)Py_True), ((PyObject *)Py_True), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__296)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__296);
      __Pyx_GIVEREF(__pyx_tuple__296);

    /* "pandas/internals.pyx":1056
     *                            fastpath=True)]
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,             # <<<<<<<<<<<<<<
     *               try_cast=False):
     *         """
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_4_where {
      PyObject_HEAD
      PyObject *__pyx_v_raise_on_error;
      PyObject *__pyx_v_self;
    };

     1057:               try_cast=False):

        /* "pandas/internals.pyx":1057
     *
     *     def where(self, other, cond, align=True, raise_on_error=True,
     *               try_cast=False):             # <<<<<<<<<<<<<<
     *         """
     *         evaluate the block; return result block(s) from the result
     */
        values[5] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("where", 0, 3, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_cond)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("where", 0, 3, 6, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_align);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_raise_on_error);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_try_cast_2);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "where") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
        __pyx_v_cond = values[2];
        __pyx_v_align = values[3];
        __pyx_v_raise_on_error = values[4];
        __pyx_v_try_cast = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("where", 0, 3, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1056; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.where", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_119where(__pyx_self, __pyx_v_self, __pyx_v_other, __pyx_v_cond, __pyx_v_align, __pyx_v_raise_on_error, __pyx_v_try_cast);

     1058:         """

     1059:         evaluate the block; return result block(s) from the result

     1060:

     1061:         Parameters

     1062:         ----------

     1063:         other : a ndarray/object

     1064:         cond  : the condition to respect

     1065:         align : boolean, perform alignment on other/cond

     1066:         raise_on_error : if True, raise when I can't perform the function,

     1067:             False by default (and just return the data that we had coming in)

     1068:

     1069:         Returns

     1070:         -------

     1071:         a new block(s), the result of the func

     1072:         """

     1073:

     1074:         values = self.values

      /* "pandas/internals.pyx":1074
     *         """
     *
     *         values = self.values             # <<<<<<<<<<<<<<
     *
     *         # see if we can align other
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1074; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1075:

     1076:         # see if we can align other

     1077:         if hasattr(other, 'reindex_axis'):

      /* "pandas/internals.pyx":1077
     *
     *         # see if we can align other
     *         if hasattr(other, 'reindex_axis'):             # <<<<<<<<<<<<<<
     *             if align:
     *                 axis = getattr(other, '_info_axis_number', 0)
     */
      __pyx_t_2 = PyObject_HasAttr(__pyx_v_other, __pyx_n_s_reindex_axis); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     1078:             if align:

        /* "pandas/internals.pyx":1078
     *         # see if we can align other
     *         if hasattr(other, 'reindex_axis'):
     *             if align:             # <<<<<<<<<<<<<<
     *                 axis = getattr(other, '_info_axis_number', 0)
     *                 other = other.reindex_axis(self.items, axis=axis,
     */
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_align); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1078; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_3) {

     1079:                 axis = getattr(other, '_info_axis_number', 0)

          /* "pandas/internals.pyx":1079
     *         if hasattr(other, 'reindex_axis'):
     *             if align:
     *                 axis = getattr(other, '_info_axis_number', 0)             # <<<<<<<<<<<<<<
     *                 other = other.reindex_axis(self.items, axis=axis,
     *                                            copy=True).values
     */
          __pyx_t_1 = __Pyx_GetAttr3(__pyx_v_other, __pyx_n_s_info_axis_number, __pyx_int_0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_v_axis = __pyx_t_1;
          __pyx_t_1 = 0;

     1080:                 other = other.reindex_axis(self.items, axis=axis,

          /* "pandas/internals.pyx":1080
     *             if align:
     *                 axis = getattr(other, '_info_axis_number', 0)
     *                 other = other.reindex_axis(self.items, axis=axis,             # <<<<<<<<<<<<<<
     *                                            copy=True).values
     *             else:
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_reindex_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":1080
     *             if align:
     *                 axis = getattr(other, '_info_axis_number', 0)
     *                 other = other.reindex_axis(self.items, axis=axis,             # <<<<<<<<<<<<<<
     *                                            copy=True).values
     *             else:
     */
          __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1081:                                            copy=True).values

          /* "pandas/internals.pyx":1081
     *                 axis = getattr(other, '_info_axis_number', 0)
     *                 other = other.reindex_axis(self.items, axis=axis,
     *                                            copy=True).values             # <<<<<<<<<<<<<<
     *             else:
     *                 other = other.values
     */
          if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_copy, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":1081
     *                 axis = getattr(other, '_info_axis_number', 0)
     *                 other = other.reindex_axis(self.items, axis=axis,
     *                                            copy=True).values             # <<<<<<<<<<<<<<
     *             else:
     *                 other = other.values
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_values); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1081; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_4);
          __pyx_t_4 = 0;
          goto __pyx_L4;
        }
        /*else*/ {

     1082:             else:

     1083:                 other = other.values

          /* "pandas/internals.pyx":1083
     *                                            copy=True).values
     *             else:
     *                 other = other.values             # <<<<<<<<<<<<<<
     *
     *         # make sure that we can broadcast
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_values); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1083; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_4);
          __pyx_t_4 = 0;
        }
        __pyx_L4:;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1084:

     1085:         # make sure that we can broadcast

     1086:         is_transposed = False

      /* "pandas/internals.pyx":1086
     *
     *         # make sure that we can broadcast
     *         is_transposed = False             # <<<<<<<<<<<<<<
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):
     *             if values.ndim != other.ndim or values.shape == other.shape[::-1]:
     */
      __pyx_v_is_transposed = 0;

     1087:         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):

      /* "pandas/internals.pyx":1087
     *         # make sure that we can broadcast
     *         is_transposed = False
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):             # <<<<<<<<<<<<<<
     *             if values.ndim != other.ndim or values.shape == other.shape[::-1]:
     *
     */
      __pyx_t_3 = PyObject_HasAttr(__pyx_v_other, __pyx_n_s_ndim); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if ((__pyx_t_3 != 0)) {
        __pyx_t_2 = PyObject_HasAttr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_7 = (__pyx_t_2 != 0);
      } else {
        __pyx_t_7 = (__pyx_t_3 != 0);
      }
      if (__pyx_t_7) {

     1088:             if values.ndim != other.ndim or values.shape == other.shape[::-1]:

        /* "pandas/internals.pyx":1088
     *         is_transposed = False
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):
     *             if values.ndim != other.ndim or values.shape == other.shape[::-1]:             # <<<<<<<<<<<<<<
     *
     *                 # pseodo broadcast (its a 2d vs 1d say and where needs it in a
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ndim); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = PyObject_RichCompare(__pyx_t_4, __pyx_t_6, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (!__pyx_t_7) {
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_4 = PyObject_GetItem(__pyx_t_6, __pyx_slice__23); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_RichCompare(__pyx_t_5, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_2 = __pyx_t_3;
        } else {
          __pyx_t_2 = __pyx_t_7;
        }
        if (__pyx_t_2) {

      /* "pandas/internals.pyx":1088
     *         is_transposed = False
     *         if hasattr(other, 'ndim') and hasattr(values, 'ndim'):
     *             if values.ndim != other.ndim or values.shape == other.shape[::-1]:             # <<<<<<<<<<<<<<
     *
     *                 # pseodo broadcast (its a 2d vs 1d say and where needs it in a
     */
      __pyx_slice__23 = PySlice_New(Py_None, Py_None, __pyx_int_neg_1); if (unlikely(!__pyx_slice__23)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__23);
      __Pyx_GIVEREF(__pyx_slice__23);

     1089:

     1090:                 # pseodo broadcast (its a 2d vs 1d say and where needs it in a

     1091:                 # specific direction)

     1092:                 if (other.ndim >= 1 and values.ndim - 1 == other.ndim and

          /* "pandas/internals.pyx":1092
     *                 # pseodo broadcast (its a 2d vs 1d say and where needs it in a
     *                 # specific direction)
     *                 if (other.ndim >= 1 and values.ndim - 1 == other.ndim and             # <<<<<<<<<<<<<<
     *                         values.shape[0] != other.shape[0]):
     *                     other = _block_shape(other).T
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ndim); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_4 = PyObject_RichCompare(__pyx_t_6, __pyx_int_1, Py_GE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          if (__pyx_t_2) {
            __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_6 = PyNumber_Subtract(__pyx_t_4, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_5 = PyObject_RichCompare(__pyx_t_6, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            if (__pyx_t_7) {

     1093:                         values.shape[0] != other.shape[0]):

              /* "pandas/internals.pyx":1093
     *                 # specific direction)
     *                 if (other.ndim >= 1 and values.ndim - 1 == other.ndim and
     *                         values.shape[0] != other.shape[0]):             # <<<<<<<<<<<<<<
     *                     other = _block_shape(other).T
     *                 else:
     */
              __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_5, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1093; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_4);
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_5, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1093; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __pyx_t_5 = PyObject_RichCompare(__pyx_t_4, __pyx_t_6, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __pyx_t_8 = __pyx_t_3;
            } else {
              __pyx_t_8 = __pyx_t_7;
            }
            __pyx_t_7 = __pyx_t_8;
          } else {
            __pyx_t_7 = __pyx_t_2;
          }
          if (__pyx_t_7) {

     1094:                     other = _block_shape(other).T

            /* "pandas/internals.pyx":1094
     *                 if (other.ndim >= 1 and values.ndim - 1 == other.ndim and
     *                         values.shape[0] != other.shape[0]):
     *                     other = _block_shape(other).T             # <<<<<<<<<<<<<<
     *                 else:
     *                     values = values.T
     */
            __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_INCREF(__pyx_v_other);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_other);
            __Pyx_GIVEREF(__pyx_v_other);
            __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_T); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_6);
            __pyx_t_6 = 0;
            goto __pyx_L7;
          }
          /*else*/ {

     1095:                 else:

     1096:                     values = values.T

            /* "pandas/internals.pyx":1096
     *                     other = _block_shape(other).T
     *                 else:
     *                     values = values.T             # <<<<<<<<<<<<<<
     *                     is_transposed = True
     *
     */
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_T); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_6);
            __pyx_t_6 = 0;

     1097:                     is_transposed = True

            /* "pandas/internals.pyx":1097
     *                 else:
     *                     values = values.T
     *                     is_transposed = True             # <<<<<<<<<<<<<<
     *
     *         # see if we can align cond
     */
            __pyx_v_is_transposed = 1;
          }
          __pyx_L7:;
          goto __pyx_L6;
        }
        __pyx_L6:;
        goto __pyx_L5;
      }
      __pyx_L5:;

     1098:

     1099:         # see if we can align cond

     1100:         if not hasattr(cond, 'shape'):

      /* "pandas/internals.pyx":1100
     *
     *         # see if we can align cond
     *         if not hasattr(cond, 'shape'):             # <<<<<<<<<<<<<<
     *             raise ValueError(
     *                 "where must have a condition that is ndarray like")
     */
      __pyx_t_7 = PyObject_HasAttr(__pyx_v_cond, __pyx_n_s_shape); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = ((!(__pyx_t_7 != 0)) != 0);
      if (__pyx_t_2) {

     1101:             raise ValueError(

        /* "pandas/internals.pyx":1101
     *         # see if we can align cond
     *         if not hasattr(cond, 'shape'):
     *             raise ValueError(             # <<<<<<<<<<<<<<
     *                 "where must have a condition that is ndarray like")
     *
     */
        __pyx_t_6 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__24, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_Raise(__pyx_t_6, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":1101
     *         # see if we can align cond
     *         if not hasattr(cond, 'shape'):
     *             raise ValueError(             # <<<<<<<<<<<<<<
     *                 "where must have a condition that is ndarray like")
     *
     */
      __pyx_tuple__24 = PyTuple_Pack(1, __pyx_kp_s_where_must_have_a_condition_that); if (unlikely(!__pyx_tuple__24)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__24);
      __Pyx_GIVEREF(__pyx_tuple__24);

     1102:                 "where must have a condition that is ndarray like")

     1103:

     1104:         if align and hasattr(cond, 'reindex_axis'):

      /* "pandas/internals.pyx":1104
     *                 "where must have a condition that is ndarray like")
     *
     *         if align and hasattr(cond, 'reindex_axis'):             # <<<<<<<<<<<<<<
     *             axis = getattr(cond, '_info_axis_number', 0)
     *             cond = cond.reindex_axis(self.items, axis=axis, copy=True).values
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_align); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_7 = PyObject_HasAttr(__pyx_v_cond, __pyx_n_s_reindex_axis); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = __pyx_t_7;
      } else {
        __pyx_t_8 = __pyx_t_2;
      }
      if (__pyx_t_8) {

     1105:             axis = getattr(cond, '_info_axis_number', 0)

        /* "pandas/internals.pyx":1105
     *
     *         if align and hasattr(cond, 'reindex_axis'):
     *             axis = getattr(cond, '_info_axis_number', 0)             # <<<<<<<<<<<<<<
     *             cond = cond.reindex_axis(self.items, axis=axis, copy=True).values
     *         else:
     */
        __pyx_t_6 = __Pyx_GetAttr3(__pyx_v_cond, __pyx_n_s_info_axis_number, __pyx_int_0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_XDECREF_SET(__pyx_v_axis, __pyx_t_6);
        __pyx_t_6 = 0;

     1106:             cond = cond.reindex_axis(self.items, axis=axis, copy=True).values

        /* "pandas/internals.pyx":1106
     *         if align and hasattr(cond, 'reindex_axis'):
     *             axis = getattr(cond, '_info_axis_number', 0)
     *             cond = cond.reindex_axis(self.items, axis=axis, copy=True).values             # <<<<<<<<<<<<<<
     *         else:
     *             cond = cond.values
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_reindex_axis); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_copy, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_values); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_cond, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L9;
      }
      /*else*/ {

     1107:         else:

     1108:             cond = cond.values

        /* "pandas/internals.pyx":1108
     *             cond = cond.reindex_axis(self.items, axis=axis, copy=True).values
     *         else:
     *             cond = cond.values             # <<<<<<<<<<<<<<
     *
     *         # may need to undo transpose of values
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_values); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF_SET(__pyx_v_cond, __pyx_t_4);
        __pyx_t_4 = 0;
      }
      __pyx_L9:;

     1109:

     1110:         # may need to undo transpose of values

     1111:         if hasattr(values, 'ndim'):

      /* "pandas/internals.pyx":1111
     *
     *         # may need to undo transpose of values
     *         if hasattr(values, 'ndim'):             # <<<<<<<<<<<<<<
     *             if values.ndim != cond.ndim or values.shape == cond.shape[::-1]:
     *                 values = values.T
     */
      __pyx_t_8 = PyObject_HasAttr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = (__pyx_t_8 != 0);
      if (__pyx_t_2) {

     1112:             if values.ndim != cond.ndim or values.shape == cond.shape[::-1]:

        /* "pandas/internals.pyx":1112
     *         # may need to undo transpose of values
     *         if hasattr(values, 'ndim'):
     *             if values.ndim != cond.ndim or values.shape == cond.shape[::-1]:             # <<<<<<<<<<<<<<
     *                 values = values.T
     *                 is_transposed = not is_transposed
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyObject_RichCompare(__pyx_t_4, __pyx_t_1, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (!__pyx_t_2) {
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = PyObject_GetItem(__pyx_t_1, __pyx_slice__25); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_RichCompare(__pyx_t_5, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_7 = __pyx_t_8;
        } else {
          __pyx_t_7 = __pyx_t_2;
        }
        if (__pyx_t_7) {

      /* "pandas/internals.pyx":1112
     *         # may need to undo transpose of values
     *         if hasattr(values, 'ndim'):
     *             if values.ndim != cond.ndim or values.shape == cond.shape[::-1]:             # <<<<<<<<<<<<<<
     *                 values = values.T
     *                 is_transposed = not is_transposed
     */
      __pyx_slice__25 = PySlice_New(Py_None, Py_None, __pyx_int_neg_1); if (unlikely(!__pyx_slice__25)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__25);
      __Pyx_GIVEREF(__pyx_slice__25);

     1113:                 values = values.T

          /* "pandas/internals.pyx":1113
     *         if hasattr(values, 'ndim'):
     *             if values.ndim != cond.ndim or values.shape == cond.shape[::-1]:
     *                 values = values.T             # <<<<<<<<<<<<<<
     *                 is_transposed = not is_transposed
     *
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_T); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
          __pyx_t_1 = 0;

     1114:                 is_transposed = not is_transposed

          /* "pandas/internals.pyx":1114
     *             if values.ndim != cond.ndim or values.shape == cond.shape[::-1]:
     *                 values = values.T
     *                 is_transposed = not is_transposed             # <<<<<<<<<<<<<<
     *
     *         # our where function
     */
          __pyx_v_is_transposed = (!(__pyx_v_is_transposed != 0));
          goto __pyx_L11;
        }
        __pyx_L11:;
        goto __pyx_L10;
      }
      __pyx_L10:;

     1115:

     1116:         # our where function

     1117:         def func(c, v, o):

    /* "pandas/internals.pyx":1117
     *
     *         # our where function
     *         def func(c, v, o):             # <<<<<<<<<<<<<<
     *             if c.ravel().all():
     *                 return v
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_5where_1func(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_5where_1func = {__Pyx_NAMESTR("func"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_5where_1func, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_5where_1func(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_c = 0;
      PyObject *__pyx_v_v = 0;
      PyObject *__pyx_v_o = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("func (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_c,&__pyx_n_s_v,&__pyx_n_s_o,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_c)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("func", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_o)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("func", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "func") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_c = values[0];
        __pyx_v_v = values[1];
        __pyx_v_o = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("func", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.where.func", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_5where_func(__pyx_self, __pyx_v_c, __pyx_v_v, __pyx_v_o);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_5where_func(PyObject *__pyx_self, PyObject *__pyx_v_c, PyObject *__pyx_v_v, PyObject *__pyx_v_o) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_4_where *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_4_where *__pyx_outer_scope;
      PyObject *__pyx_v_detail = NULL;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("func", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_4_where *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;
      __Pyx_INCREF(__pyx_v_v);
      __Pyx_INCREF(__pyx_v_o);

      /* "pandas/internals.pyx":1117
     *
     *         # our where function
     *         def func(c, v, o):             # <<<<<<<<<<<<<<
     *             if c.ravel().all():
     *                 return v
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.Block.where.func", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_detail);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XDECREF(__pyx_v_o);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1117
     *
     *         # our where function
     *         def func(c, v, o):             # <<<<<<<<<<<<<<
     *             if c.ravel().all():
     *                 return v
     */
      __pyx_tuple__26 = PyTuple_Pack(5, __pyx_n_s_c, __pyx_n_s_v, __pyx_n_s_o, __pyx_n_s_detail, __pyx_n_s_result); if (unlikely(!__pyx_tuple__26)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__26);
      __Pyx_GIVEREF(__pyx_tuple__26);

      /* "pandas/internals.pyx":1117
     *
     *         # our where function
     *         def func(c, v, o):             # <<<<<<<<<<<<<<
     *             if c.ravel().all():
     *                 return v
     */
      __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_5where_1func, 0, __pyx_n_s_Block_where_locals_func, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__27)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_func = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_codeobj__27 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__26, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_func, 1117, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__27)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1118:             if c.ravel().all():

      /* "pandas/internals.pyx":1118
     *         # our where function
     *         def func(c, v, o):
     *             if c.ravel().all():             # <<<<<<<<<<<<<<
     *                 return v
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_c, __pyx_n_s_ravel); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_all); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     1119:                 return v

        /* "pandas/internals.pyx":1119
     *         def func(c, v, o):
     *             if c.ravel().all():
     *                 return v             # <<<<<<<<<<<<<<
     *
     *             v, o = self._try_coerce_args(v, o)
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_v);
        __pyx_r = __pyx_v_v;
        goto __pyx_L0;
      }

     1120:

     1121:             v, o = self._try_coerce_args(v, o)

      /* "pandas/internals.pyx":1121
     *                 return v
     *
     *             v, o = self._try_coerce_args(v, o)             # <<<<<<<<<<<<<<
     *             try:
     *                 return self._try_coerce_result(
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_coerce_args); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_v);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_v);
      __Pyx_GIVEREF(__pyx_v_v);
      __Pyx_INCREF(__pyx_v_o);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_o);
      __Pyx_GIVEREF(__pyx_v_o);
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
        PyObject* sequence = __pyx_t_4;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_2);
        #else
        __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        #endif
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
        index = 0; __pyx_t_1 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L4_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        index = 1; __pyx_t_2 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_2)) goto __pyx_L4_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = NULL;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L5_unpacking_done;
        __pyx_L4_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1121; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L5_unpacking_done:;
      }
      __Pyx_DECREF_SET(__pyx_v_v, __pyx_t_1);
      __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_o, __pyx_t_2);
      __pyx_t_2 = 0;

     1122:             try:

      /* "pandas/internals.pyx":1122
     *
     *             v, o = self._try_coerce_args(v, o)
     *             try:             # <<<<<<<<<<<<<<
     *                 return self._try_coerce_result(
     *                     expressions.where(c, v, o, raise_on_error=True)
     */
      {
        /*try:*/ {

     1123:                 return self._try_coerce_result(

          /* "pandas/internals.pyx":1123
     *             v, o = self._try_coerce_args(v, o)
     *             try:
     *                 return self._try_coerce_result(             # <<<<<<<<<<<<<<
     *                     expressions.where(c, v, o, raise_on_error=True)
     *                 )
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_coerce_result); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1123; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_4);

          /* "pandas/internals.pyx":1123
     *             v, o = self._try_coerce_args(v, o)
     *             try:
     *                 return self._try_coerce_result(             # <<<<<<<<<<<<<<
     *                     expressions.where(c, v, o, raise_on_error=True)
     *                 )
     */
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1123; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __pyx_t_10 = 0;
          __pyx_t_10 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1123; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_r = __pyx_t_10;
          __pyx_t_10 = 0;
          goto __pyx_L10_try_return;
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L13_try_end;
        __pyx_L6_error:;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;

     1124:                     expressions.where(c, v, o, raise_on_error=True)

          /* "pandas/internals.pyx":1124
     *             try:
     *                 return self._try_coerce_result(
     *                     expressions.where(c, v, o, raise_on_error=True)             # <<<<<<<<<<<<<<
     *                 )
     *             except Exception as detail:
     */
          __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_expressions); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1124; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_where); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1124; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1124; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_c);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_c);
          __Pyx_GIVEREF(__pyx_v_c);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __Pyx_INCREF(__pyx_v_o);
          PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_o);
          __Pyx_GIVEREF(__pyx_v_o);
          __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1124; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_5);
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_raise_on_error, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1124; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __pyx_t_10 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1124; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     1125:                 )

     1126:             except Exception as detail:

        /* "pandas/internals.pyx":1126
     *                     expressions.where(c, v, o, raise_on_error=True)
     *                 )
     *             except Exception as detail:             # <<<<<<<<<<<<<<
     *                 if raise_on_error:
     *                     raise TypeError('Could not operate [%s] with block values '
     */
        __pyx_t_11 = PyErr_ExceptionMatches(__pyx_builtin_Exception);
        if (__pyx_t_11) {
          __Pyx_AddTraceback("pandas.internals.Block.where.func", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_10, &__pyx_t_5, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1126; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_5);
          __pyx_v_detail = __pyx_t_5;

     1127:                 if raise_on_error:

          /* "pandas/internals.pyx":1127
     *                 )
     *             except Exception as detail:
     *                 if raise_on_error:             # <<<<<<<<<<<<<<
     *                     raise TypeError('Could not operate [%s] with block values '
     *                                     '[%s]' % (repr(o), str(detail)))
     */
          if (unlikely(!__pyx_cur_scope->__pyx_v_raise_on_error)) { __Pyx_RaiseClosureNameError("raise_on_error"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1127; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;} }
          __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_raise_on_error); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1127; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          if (__pyx_t_3) {

     1128:                     raise TypeError('Could not operate [%s] with block values '

            /* "pandas/internals.pyx":1128
     *             except Exception as detail:
     *                 if raise_on_error:
     *                     raise TypeError('Could not operate [%s] with block values '             # <<<<<<<<<<<<<<
     *                                     '[%s]' % (repr(o), str(detail)))
     *                 else:
     */
            __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1128; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_1);
            PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_12);
            __Pyx_GIVEREF(__pyx_t_12);
            __pyx_t_12 = 0;
            __pyx_t_12 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1128; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_Raise(__pyx_t_12, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1128; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          }
          /*else*/ {

     1129:                                     '[%s]' % (repr(o), str(detail)))

            /* "pandas/internals.pyx":1129
     *                 if raise_on_error:
     *                     raise TypeError('Could not operate [%s] with block values '
     *                                     '[%s]' % (repr(o), str(detail)))             # <<<<<<<<<<<<<<
     *                 else:
     *                     # return the values
     */
            __pyx_t_2 = PyObject_Repr(__pyx_v_o); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1129; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1129; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_INCREF(__pyx_v_detail);
            PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_detail);
            __Pyx_GIVEREF(__pyx_v_detail);
            __pyx_t_12 = PyObject_Call(((PyObject *)((PyObject*)(&PyString_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1129; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1129; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_1);
            PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_2);
            PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_12);
            __Pyx_GIVEREF(__pyx_t_12);
            __pyx_t_2 = 0;
            __pyx_t_12 = 0;
            __pyx_t_12 = __Pyx_PyString_Format(__pyx_kp_s_Could_not_operate_s_with_block_v_2, __pyx_t_1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1129; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1130:                 else:

     1131:                     # return the values

     1132:                     result = np.empty(v.shape, dtype='float64')

            /* "pandas/internals.pyx":1132
     *                 else:
     *                     # return the values
     *                     result = np.empty(v.shape, dtype='float64')             # <<<<<<<<<<<<<<
     *                     result.fill(np.nan)
     *                     return result
     */
            __pyx_t_12 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_empty); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_shape); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_2);
            PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_12);
            __Pyx_GIVEREF(__pyx_t_12);
            __pyx_t_12 = 0;
            __pyx_t_12 = PyDict_New(); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            if (PyDict_SetItem(__pyx_t_12, __pyx_n_s_dtype, __pyx_n_s_float64) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __pyx_t_13 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_12); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1132; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __pyx_v_result = __pyx_t_13;
            __pyx_t_13 = 0;

     1133:                     result.fill(np.nan)

            /* "pandas/internals.pyx":1133
     *                     # return the values
     *                     result = np.empty(v.shape, dtype='float64')
     *                     result.fill(np.nan)             # <<<<<<<<<<<<<<
     *                     return result
     *
     */
            __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_fill); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __pyx_t_12 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_12, __pyx_n_s_nan); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_12);
            PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_2);
            __pyx_t_2 = 0;
            __pyx_t_2 = PyObject_Call(__pyx_t_13, __pyx_t_12, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1133; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1134:                     return result

            /* "pandas/internals.pyx":1134
     *                     result = np.empty(v.shape, dtype='float64')
     *                     result.fill(np.nan)
     *                     return result             # <<<<<<<<<<<<<<
     *
     *         # see if we can operate on the entire block, or need item-by-item
     */
            __Pyx_XDECREF(__pyx_r);
            __Pyx_INCREF(__pyx_v_result);
            __pyx_r = __pyx_v_result;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            goto __pyx_L9_except_return;
          }
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L7_exception_handled;
        }
        goto __pyx_L8_except_error;
        __pyx_L8_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L10_try_return:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L0;
        __pyx_L9_except_return:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L0;
        __pyx_L7_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L13_try_end:;
      }

     1135:

     1136:         # see if we can operate on the entire block, or need item-by-item

     1137:         # or if we are a single block (ndim == 1)

     1138:         result = func(cond, values, other)

      /* "pandas/internals.pyx":1138
     *         # see if we can operate on the entire block, or need item-by-item
     *         # or if we are a single block (ndim == 1)
     *         result = func(cond, values, other)             # <<<<<<<<<<<<<<
     *         if self._can_hold_na or self.ndim == 1:
     *
     */
      __pyx_t_1 = __pyx_pf_6pandas_9internals_5Block_5where_func(__pyx_v_func, __pyx_v_cond, __pyx_v_values, __pyx_v_other); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1138; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_result = __pyx_t_1;
      __pyx_t_1 = 0;

     1139:         if self._can_hold_na or self.ndim == 1:

      /* "pandas/internals.pyx":1139
     *         # or if we are a single block (ndim == 1)
     *         result = func(cond, values, other)
     *         if self._can_hold_na or self.ndim == 1:             # <<<<<<<<<<<<<<
     *
     *             if not isinstance(result, np.ndarray):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_can_hold_na); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (!__pyx_t_7) {
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PyObject_RichCompare(__pyx_t_1, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_8 = __pyx_t_2;
      } else {
        __pyx_t_8 = __pyx_t_7;
      }
      if (__pyx_t_8) {

     1140:

     1141:             if not isinstance(result, np.ndarray):

        /* "pandas/internals.pyx":1141
     *         if self._can_hold_na or self.ndim == 1:
     *
     *             if not isinstance(result, np.ndarray):             # <<<<<<<<<<<<<<
     *                 raise TypeError('Could not compare [%s] with block values'
     *                                 % repr(other))
     */
        __pyx_t_8 = __Pyx_TypeCheck(__pyx_v_result, ((PyObject*)__pyx_ptype_5numpy_ndarray));
        __pyx_t_7 = ((!(__pyx_t_8 != 0)) != 0);
        if (__pyx_t_7) {

     1142:                 raise TypeError('Could not compare [%s] with block values'

          /* "pandas/internals.pyx":1142
     *
     *             if not isinstance(result, np.ndarray):
     *                 raise TypeError('Could not compare [%s] with block values'             # <<<<<<<<<<<<<<
     *                                 % repr(other))
     *
     */
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1142; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_builtin_TypeError, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1142; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_Raise(__pyx_t_1, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1142; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }

     1143:                                 % repr(other))

          /* "pandas/internals.pyx":1143
     *             if not isinstance(result, np.ndarray):
     *                 raise TypeError('Could not compare [%s] with block values'
     *                                 % repr(other))             # <<<<<<<<<<<<<<
     *
     *             if is_transposed:
     */
          __pyx_t_4 = PyObject_Repr(__pyx_v_other); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Could_not_compare_s_with_block_v, __pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1144:

     1145:             if is_transposed:

        /* "pandas/internals.pyx":1145
     *                                 % repr(other))
     *
     *             if is_transposed:             # <<<<<<<<<<<<<<
     *                 result = result.T
     *
     */
        __pyx_t_7 = (__pyx_v_is_transposed != 0);
        if (__pyx_t_7) {

     1146:                 result = result.T

          /* "pandas/internals.pyx":1146
     *
     *             if is_transposed:
     *                 result = result.T             # <<<<<<<<<<<<<<
     *
     *             # try to cast if requested
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_T); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1146; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_1);
          __pyx_t_1 = 0;
          goto __pyx_L14;
        }
        __pyx_L14:;

     1147:

     1148:             # try to cast if requested

     1149:             if try_cast:

        /* "pandas/internals.pyx":1149
     *
     *             # try to cast if requested
     *             if try_cast:             # <<<<<<<<<<<<<<
     *                 result = self._try_cast_result(result)
     *
     */
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_try_cast); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1149; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_7) {

     1150:                 result = self._try_cast_result(result)

          /* "pandas/internals.pyx":1150
     *             # try to cast if requested
     *             if try_cast:
     *                 result = self._try_cast_result(result)             # <<<<<<<<<<<<<<
     *
     *             return make_block(result, self.items, self.ref_items,
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_cast_result); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_result);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result);
          __Pyx_GIVEREF(__pyx_v_result);
          __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_5);
          __pyx_t_5 = 0;
          goto __pyx_L15;
        }
        __pyx_L15:;

     1151:

     1152:             return make_block(result, self.items, self.ref_items,

        /* "pandas/internals.pyx":1152
     *                 result = self._try_cast_result(result)
     *
     *             return make_block(result, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                               ndim=self.ndim)
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_4 = 0;
        __pyx_t_1 = 0;
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":1152
     *                 result = self._try_cast_result(result)
     *
     *             return make_block(result, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                               ndim=self.ndim)
     *
     */
        __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

     1153:                               ndim=self.ndim)

        /* "pandas/internals.pyx":1153
     *
     *             return make_block(result, self.items, self.ref_items,
     *                               ndim=self.ndim)             # <<<<<<<<<<<<<<
     *
     *         # might need to separate out blocks
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ndim, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1154:

     1155:         # might need to separate out blocks

     1156:         axis = cond.ndim - 1

      /* "pandas/internals.pyx":1156
     *
     *         # might need to separate out blocks
     *         axis = cond.ndim - 1             # <<<<<<<<<<<<<<
     *         cond = cond.swapaxes(axis, 0)
     *         mask = np.array([cond[i].all() for i in range(cond.shape[0])],
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_ndim); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1156; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = PyNumber_Subtract(__pyx_t_4, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1156; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_XDECREF_SET(__pyx_v_axis, __pyx_t_1);
      __pyx_t_1 = 0;

     1157:         cond = cond.swapaxes(axis, 0)

      /* "pandas/internals.pyx":1157
     *         # might need to separate out blocks
     *         axis = cond.ndim - 1
     *         cond = cond.swapaxes(axis, 0)             # <<<<<<<<<<<<<<
     *         mask = np.array([cond[i].all() for i in range(cond.shape[0])],
     *                         dtype=bool)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_swapaxes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1157; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1157; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_axis);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_axis);
      __Pyx_GIVEREF(__pyx_v_axis);
      __Pyx_INCREF(__pyx_int_0);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_int_0);
      __Pyx_GIVEREF(__pyx_int_0);
      __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1157; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_cond, __pyx_t_6);
      __pyx_t_6 = 0;

     1158:         mask = np.array([cond[i].all() for i in range(cond.shape[0])],

      /* "pandas/internals.pyx":1158
     *         axis = cond.ndim - 1
     *         cond = cond.swapaxes(axis, 0)
     *         mask = np.array([cond[i].all() for i in range(cond.shape[0])],             # <<<<<<<<<<<<<<
     *                         dtype=bool)
     *
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_array); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_range); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_9 = __Pyx_GetItemInt(__pyx_t_5, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_9 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_9);
      __Pyx_GIVEREF(__pyx_t_9);
      __pyx_t_9 = 0;
      __pyx_t_9 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyList_CheckExact(__pyx_t_9) || PyTuple_CheckExact(__pyx_t_9)) {
        __pyx_t_5 = __pyx_t_9; __Pyx_INCREF(__pyx_t_5); __pyx_t_10 = 0;
        __pyx_t_11 = NULL;
      } else {
        __pyx_t_10 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_11 = Py_TYPE(__pyx_t_5)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      for (;;) {
        if (!__pyx_t_11 && PyList_CheckExact(__pyx_t_5)) {
          if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_9 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_9 = PySequence_ITEM(__pyx_t_5, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_11 && PyTuple_CheckExact(__pyx_t_5)) {
          if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_9 = PySequence_ITEM(__pyx_t_5, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_9 = __pyx_t_11(__pyx_t_5);
          if (unlikely(!__pyx_t_9)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_9);
        }
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_9);
        __pyx_t_9 = 0;
        __pyx_t_9 = PyObject_GetItem(__pyx_v_cond, __pyx_v_i); if (unlikely(__pyx_t_9 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_all); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_9 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_6, (PyObject*)__pyx_t_9))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);

      /* "pandas/internals.pyx":1158
     *         axis = cond.ndim - 1
     *         cond = cond.swapaxes(axis, 0)
     *         mask = np.array([cond[i].all() for i in range(cond.shape[0])],             # <<<<<<<<<<<<<<
     *                         dtype=bool)
     *
     */
      __pyx_t_9 = PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_v_mask = __pyx_t_9;
      __pyx_t_9 = 0;

     1159:                         dtype=bool)

      /* "pandas/internals.pyx":1159
     *         cond = cond.swapaxes(axis, 0)
     *         mask = np.array([cond[i].all() for i in range(cond.shape[0])],
     *                         dtype=bool)             # <<<<<<<<<<<<<<
     *
     *         result_blocks = []
     */
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, ((PyObject*)&PyBool_Type)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1160:

     1161:         result_blocks = []

      /* "pandas/internals.pyx":1161
     *                         dtype=bool)
     *
     *         result_blocks = []             # <<<<<<<<<<<<<<
     *         for m in [mask, ~mask]:
     *             if m.any():
     */
      __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1161; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_v_result_blocks = ((PyObject*)__pyx_t_9);
      __pyx_t_9 = 0;

     1162:         for m in [mask, ~mask]:

      /* "pandas/internals.pyx":1162
     *
     *         result_blocks = []
     *         for m in [mask, ~mask]:             # <<<<<<<<<<<<<<
     *             if m.any():
     *                 items = self.items[m]
     */
      __pyx_t_9 = PyNumber_Invert(__pyx_v_mask); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1162; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1162; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_mask);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_mask);
      __Pyx_GIVEREF(__pyx_v_mask);
      PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_9);
      __Pyx_GIVEREF(__pyx_t_9);
      __pyx_t_9 = 0;
      __pyx_t_9 = __pyx_t_6; __Pyx_INCREF(__pyx_t_9); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      for (;;) {
        if (__pyx_t_10 >= 2) break;
        #if CYTHON_COMPILING_IN_CPYTHON
        __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_10); __Pyx_INCREF(__pyx_t_6); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1162; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        #else
        __pyx_t_6 = PySequence_ITEM(__pyx_t_9, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1162; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        #endif
        __Pyx_XDECREF_SET(__pyx_v_m, __pyx_t_6);
        __pyx_t_6 = 0;

     1163:             if m.any():

        /* "pandas/internals.pyx":1163
     *         result_blocks = []
     *         for m in [mask, ~mask]:
     *             if m.any():             # <<<<<<<<<<<<<<
     *                 items = self.items[m]
     *                 slices = [slice(None)] * cond.ndim
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_m, __pyx_n_s_any); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1163; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1163; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1163; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__pyx_t_7) {

     1164:                 items = self.items[m]

          /* "pandas/internals.pyx":1164
     *         for m in [mask, ~mask]:
     *             if m.any():
     *                 items = self.items[m]             # <<<<<<<<<<<<<<
     *                 slices = [slice(None)] * cond.ndim
     *                 slices[axis] = self.items.get_indexer(items)
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1164; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = PyObject_GetItem(__pyx_t_5, __pyx_v_m); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1164; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF_SET(__pyx_v_items, __pyx_t_6);
          __pyx_t_6 = 0;

     1165:                 slices = [slice(None)] * cond.ndim

          /* "pandas/internals.pyx":1165
     *             if m.any():
     *                 items = self.items[m]
     *                 slices = [slice(None)] * cond.ndim             # <<<<<<<<<<<<<<
     *                 slices[axis] = self.items.get_indexer(items)
     *                 r = self._try_cast_result(result[slices])
     */
          __pyx_t_6 = PyObject_Call(((PyObject *)((PyObject*)(&PySlice_Type))), __pyx_tuple__28, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_cond, __pyx_n_s_ndim); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_6);
          { PyObject* __pyx_temp = PyNumber_InPlaceMultiply(__pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_temp)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_temp);
            __Pyx_DECREF(__pyx_t_4);
            __pyx_t_4 = __pyx_temp;
          }
          __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF_SET(__pyx_v_slices, ((PyObject*)__pyx_t_4));
          __pyx_t_4 = 0;

      /* "pandas/internals.pyx":1165
     *             if m.any():
     *                 items = self.items[m]
     *                 slices = [slice(None)] * cond.ndim             # <<<<<<<<<<<<<<
     *                 slices[axis] = self.items.get_indexer(items)
     *                 r = self._try_cast_result(result[slices])
     */
      __pyx_tuple__28 = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_tuple__28)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__28);
      __Pyx_GIVEREF(__pyx_tuple__28);

     1166:                 slices[axis] = self.items.get_indexer(items)

          /* "pandas/internals.pyx":1166
     *                 items = self.items[m]
     *                 slices = [slice(None)] * cond.ndim
     *                 slices[axis] = self.items.get_indexer(items)             # <<<<<<<<<<<<<<
     *                 r = self._try_cast_result(result[slices])
     *                 result_blocks.append(make_block(r.T, items, self.ref_items))
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_get_indexer); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_items);
          __Pyx_GIVEREF(__pyx_v_items);
          __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          if (unlikely(PyObject_SetItem(__pyx_v_slices, __pyx_v_axis, __pyx_t_6) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     1167:                 r = self._try_cast_result(result[slices])

          /* "pandas/internals.pyx":1167
     *                 slices = [slice(None)] * cond.ndim
     *                 slices[axis] = self.items.get_indexer(items)
     *                 r = self._try_cast_result(result[slices])             # <<<<<<<<<<<<<<
     *                 result_blocks.append(make_block(r.T, items, self.ref_items))
     *
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_try_cast_result); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_4 = PyObject_GetItem(__pyx_v_result, __pyx_v_slices); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1167; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF_SET(__pyx_v_r, __pyx_t_4);
          __pyx_t_4 = 0;

     1168:                 result_blocks.append(make_block(r.T, items, self.ref_items))

          /* "pandas/internals.pyx":1168
     *                 slices[axis] = self.items.get_indexer(items)
     *                 r = self._try_cast_result(result[slices])
     *                 result_blocks.append(make_block(r.T, items, self.ref_items))             # <<<<<<<<<<<<<<
     *
     *         return result_blocks
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_r, __pyx_n_s_T); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_items);
          __Pyx_GIVEREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_6);
          __pyx_t_5 = 0;
          __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_12 = __Pyx_PyList_Append(__pyx_v_result_blocks, __pyx_t_6); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L20;
        }
        __pyx_L20:;
      }
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

     1169:

     1170:         return result_blocks

      /* "pandas/internals.pyx":1170
     *                 result_blocks.append(make_block(r.T, items, self.ref_items))
     *
     *         return result_blocks             # <<<<<<<<<<<<<<
     *
     *     def equals(self, other):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result_blocks);
      __pyx_r = __pyx_v_result_blocks;
      goto __pyx_L0;

     1171:

     1172:     def equals(self, other):

    /* "pandas/internals.pyx":1172
     *         return result_blocks
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         return np.array_equal(self.values, other.values)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5Block_122equals(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5Block_122equals = {__Pyx_NAMESTR("equals"), (PyCFunction)__pyx_pw_6pandas_9internals_5Block_122equals, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5Block_122equals(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("equals (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("equals", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "equals") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("equals", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.Block.equals", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_5Block_121equals(__pyx_self, __pyx_v_self, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_5Block_121equals(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("equals", 0);

      /* "pandas/internals.pyx":1172
     *         return result_blocks
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         return np.array_equal(self.values, other.values)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.Block.equals", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1172
     *         return result_blocks
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         return np.array_equal(self.values, other.values)
     */
      __pyx_tuple__297 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_other); if (unlikely(!__pyx_tuple__297)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__297);
      __Pyx_GIVEREF(__pyx_tuple__297);

      /* "pandas/internals.pyx":1172
     *         return result_blocks
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         return np.array_equal(self.values, other.values)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_5Block_122equals, 0, __pyx_n_s_Block_equals, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__298)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_equals, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__298 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__297, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_equals, 1172, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__298)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1172; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1173:         if self.dtype != other.dtype or self.shape != other.shape: return False

      /* "pandas/internals.pyx":1173
     *
     *     def equals(self, other):
     *         if self.dtype != other.dtype or self.shape != other.shape: return False             # <<<<<<<<<<<<<<
     *         return np.array_equal(self.values, other.values)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (!__pyx_t_4) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_4;
      }
      if (__pyx_t_6) {
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_False);
        __pyx_r = Py_False;
        goto __pyx_L0;
      }

     1174:         return np.array_equal(self.values, other.values)

      /* "pandas/internals.pyx":1174
     *     def equals(self, other):
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         return np.array_equal(self.values, other.values)             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_array_equal); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_1 = 0;
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1175:

     1176:

     1177: class NumericBlock(Block):

      /* "pandas/internals.pyx":1177
     *
     *
     * class NumericBlock(Block):             # <<<<<<<<<<<<<<
     *     is_numeric = True
     *     _can_hold_na = True
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_2, __pyx_n_s_NumericBlock, __pyx_n_s_NumericBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1177
     *
     *
     * class NumericBlock(Block):             # <<<<<<<<<<<<<<
     *     is_numeric = True
     *     _can_hold_na = True
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_NumericBlock, __pyx_t_2, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_NumericBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1177; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1178:     is_numeric = True

      /* "pandas/internals.pyx":1178
     *
     * class NumericBlock(Block):
     *     is_numeric = True             # <<<<<<<<<<<<<<
     *     _can_hold_na = True
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_numeric, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1178; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1179:     _can_hold_na = True

      /* "pandas/internals.pyx":1179
     * class NumericBlock(Block):
     *     is_numeric = True
     *     _can_hold_na = True             # <<<<<<<<<<<<<<
     *
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1180:

     1181:

     1182: class FloatOrComplexBlock(NumericBlock):

      /* "pandas/internals.pyx":1182
     *
     *
     * class FloatOrComplexBlock(NumericBlock):             # <<<<<<<<<<<<<<
     *     def equals(self, other):
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_NumericBlock); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_FloatOrComplexBlock, __pyx_n_s_FloatOrComplexBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1182
     *
     *
     * class FloatOrComplexBlock(NumericBlock):             # <<<<<<<<<<<<<<
     *     def equals(self, other):
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_FloatOrComplexBlock, __pyx_t_1, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_FloatOrComplexBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1183:     def equals(self, other):

    /* "pandas/internals.pyx":1183
     *
     * class FloatOrComplexBlock(NumericBlock):
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         left, right = self.values, other.values
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_19FloatOrComplexBlock_1equals(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_19FloatOrComplexBlock_1equals = {__Pyx_NAMESTR("equals"), (PyCFunction)__pyx_pw_6pandas_9internals_19FloatOrComplexBlock_1equals, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_19FloatOrComplexBlock_1equals(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("equals (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("equals", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1183; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "equals") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1183; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("equals", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1183; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.FloatOrComplexBlock.equals", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_19FloatOrComplexBlock_equals(__pyx_self, __pyx_v_self, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_19FloatOrComplexBlock_equals(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
      PyObject *__pyx_v_left = NULL;
      PyObject *__pyx_v_right = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("equals", 0);

      /* "pandas/internals.pyx":1183
     *
     * class FloatOrComplexBlock(NumericBlock):
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         left, right = self.values, other.values
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.FloatOrComplexBlock.equals", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_left);
      __Pyx_XDECREF(__pyx_v_right);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1183
     *
     * class FloatOrComplexBlock(NumericBlock):
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         left, right = self.values, other.values
     */
      __pyx_tuple__299 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_other, __pyx_n_s_left, __pyx_n_s_right); if (unlikely(!__pyx_tuple__299)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1183; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__299);
      __Pyx_GIVEREF(__pyx_tuple__299);

      /* "pandas/internals.pyx":1183
     *
     * class FloatOrComplexBlock(NumericBlock):
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         left, right = self.values, other.values
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_19FloatOrComplexBlock_1equals, 0, __pyx_n_s_FloatOrComplexBlock_equals, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__300)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1183; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_equals, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1183; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__300 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__299, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_equals, 1183, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__300)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1183; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1184:         if self.dtype != other.dtype or self.shape != other.shape: return False

      /* "pandas/internals.pyx":1184
     * class FloatOrComplexBlock(NumericBlock):
     *     def equals(self, other):
     *         if self.dtype != other.dtype or self.shape != other.shape: return False             # <<<<<<<<<<<<<<
     *         left, right = self.values, other.values
     *         return ((left == right) | (np.isnan(left) & np.isnan(right))).all()
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (!__pyx_t_4) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1184; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_4;
      }
      if (__pyx_t_6) {
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_False);
        __pyx_r = Py_False;
        goto __pyx_L0;
      }

     1185:         left, right = self.values, other.values

      /* "pandas/internals.pyx":1185
     *     def equals(self, other):
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         left, right = self.values, other.values             # <<<<<<<<<<<<<<
     *         return ((left == right) | (np.isnan(left) & np.isnan(right))).all()
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_left = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_v_right = __pyx_t_2;
      __pyx_t_2 = 0;

     1186:         return ((left == right) | (np.isnan(left) & np.isnan(right))).all()

      /* "pandas/internals.pyx":1186
     *         if self.dtype != other.dtype or self.shape != other.shape: return False
     *         left, right = self.values, other.values
     *         return ((left == right) | (np.isnan(left) & np.isnan(right))).all()             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = PyObject_RichCompare(__pyx_v_left, __pyx_v_right, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_isnan); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_left);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_left);
      __Pyx_GIVEREF(__pyx_v_left);
      __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_isnan); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_right);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_right);
      __Pyx_GIVEREF(__pyx_v_right);
      __pyx_t_8 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyNumber_And(__pyx_t_7, __pyx_t_8); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = PyNumber_Or(__pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_all); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_t_8 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_8;
      __pyx_t_8 = 0;
      goto __pyx_L0;

     1187:

     1188:

     1189: class FloatBlock(FloatOrComplexBlock):

      /* "pandas/internals.pyx":1189
     *
     *
     * class FloatBlock(FloatOrComplexBlock):             # <<<<<<<<<<<<<<
     *     is_float = True
     *     _downcast_dtype = 'int64'
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_FloatOrComplexBlock); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_2, __pyx_n_s_FloatBlock, __pyx_n_s_FloatBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1189
     *
     *
     * class FloatBlock(FloatOrComplexBlock):             # <<<<<<<<<<<<<<
     *     is_float = True
     *     _downcast_dtype = 'int64'
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_FloatBlock, __pyx_t_2, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_FloatBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1190:     is_float = True

      /* "pandas/internals.pyx":1190
     *
     * class FloatBlock(FloatOrComplexBlock):
     *     is_float = True             # <<<<<<<<<<<<<<
     *     _downcast_dtype = 'int64'
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_float, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1191:     _downcast_dtype = 'int64'

      /* "pandas/internals.pyx":1191
     * class FloatBlock(FloatOrComplexBlock):
     *     is_float = True
     *     _downcast_dtype = 'int64'             # <<<<<<<<<<<<<<
     *
     *     def _can_hold_element(self, element):
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_downcast_dtype, __pyx_n_s_int64) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1191; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1192:

     1193:     def _can_hold_element(self, element):

    /* "pandas/internals.pyx":1193
     *     _downcast_dtype = 'int64'
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_10FloatBlock_1_can_hold_element = {__Pyx_NAMESTR("_can_hold_element"), (PyCFunction)__pyx_pw_6pandas_9internals_10FloatBlock_1_can_hold_element, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1193; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_can_hold_element") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1193; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1193; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.FloatBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_10FloatBlock__can_hold_element(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_10FloatBlock__can_hold_element(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element", 0);
      __Pyx_INCREF(__pyx_v_element);

      /* "pandas/internals.pyx":1193
     *     _downcast_dtype = 'int64'
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.FloatBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_element);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1193
     *     _downcast_dtype = 'int64'
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_tuple__301 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__301)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__301);
      __Pyx_GIVEREF(__pyx_tuple__301);

      /* "pandas/internals.pyx":1193
     *     _downcast_dtype = 'int64'
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_10FloatBlock_1_can_hold_element, 0, __pyx_n_s_FloatBlock__can_hold_element, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__302)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_element, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__302 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__301, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_element, 1193, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__302)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1194:         if is_list_like(element):

      /* "pandas/internals.pyx":1194
     *
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):             # <<<<<<<<<<<<<<
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, (np.floating, np.integer))
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_element);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_element);
      __Pyx_GIVEREF(__pyx_v_element);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     1195:             element = np.array(element)

        /* "pandas/internals.pyx":1195
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):
     *             element = np.array(element)             # <<<<<<<<<<<<<<
     *             return issubclass(element.dtype.type, (np.floating, np.integer))
     *         return (isinstance(element, (float, int, np.float_, np.int_)) and
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_element);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_element);
        __Pyx_GIVEREF(__pyx_v_element);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_element, __pyx_t_1);
        __pyx_t_1 = 0;

     1196:             return issubclass(element.dtype.type, (np.floating, np.integer))

        /* "pandas/internals.pyx":1196
     *         if is_list_like(element):
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, (np.floating, np.integer))             # <<<<<<<<<<<<<<
     *         return (isinstance(element, (float, int, np.float_, np.int_)) and
     *                 not isinstance(bool, np.bool_))
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_element, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_floating); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_integer); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_2 = 0;
        __pyx_t_5 = 0;
        __pyx_t_4 = PyObject_IsSubclass(__pyx_t_3, __pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1196; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        goto __pyx_L0;
      }

     1197:         return (isinstance(element, (float, int, np.float_, np.int_)) and

      /* "pandas/internals.pyx":1197
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, (np.floating, np.integer))
     *         return (isinstance(element, (float, int, np.float_, np.int_)) and             # <<<<<<<<<<<<<<
     *                 not isinstance(bool, np.bool_))
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_float); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(((PyObject *)((PyObject*)(&PyFloat_Type))));
      PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)((PyObject*)(&PyFloat_Type))));
      __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyFloat_Type))));
      __Pyx_INCREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_1, 1, ((PyObject *)((PyObject*)(&PyInt_Type))));
      __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_3 = 0;
      __pyx_t_5 = 0;
      __pyx_t_4 = PyObject_IsInstance(__pyx_v_element, __pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_4) {

      /* "pandas/internals.pyx":1197
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, (np.floating, np.integer))
     *         return (isinstance(element, (float, int, np.float_, np.int_)) and             # <<<<<<<<<<<<<<
     *                 not isinstance(bool, np.bool_))
     *
     */
      __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1198:                 not isinstance(bool, np.bool_))

        /* "pandas/internals.pyx":1198
     *             return issubclass(element.dtype.type, (np.floating, np.integer))
     *         return (isinstance(element, (float, int, np.float_, np.int_)) and
     *                 not isinstance(bool, np.bool_))             # <<<<<<<<<<<<<<
     *
     *     def _try_cast(self, element):
     */
        __pyx_t_1 = ((PyObject*)&PyBool_Type);
        __Pyx_INCREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1198; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_bool); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1198; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = PyObject_IsInstance(__pyx_t_1, __pyx_t_3); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1198; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_7 = (!(__pyx_t_6 != 0));
        __pyx_t_6 = __pyx_t_7;
      } else {
        __pyx_t_6 = __pyx_t_4;
      }

     1199:

     1200:     def _try_cast(self, element):

    /* "pandas/internals.pyx":1200
     *                 not isinstance(bool, np.bool_))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return float(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_10FloatBlock_3_try_cast = {__Pyx_NAMESTR("_try_cast"), (PyCFunction)__pyx_pw_6pandas_9internals_10FloatBlock_3_try_cast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1200; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1200; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1200; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.FloatBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_10FloatBlock_2_try_cast(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_10FloatBlock_2_try_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast", 0);

      /* "pandas/internals.pyx":1200
     *                 not isinstance(bool, np.bool_))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return float(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.FloatBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1200
     *                 not isinstance(bool, np.bool_))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return float(element)
     */
      __pyx_tuple__303 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__303)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__303);
      __Pyx_GIVEREF(__pyx_tuple__303);

      /* "pandas/internals.pyx":1200
     *                 not isinstance(bool, np.bool_))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return float(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_10FloatBlock_3_try_cast, 0, __pyx_n_s_FloatBlock__try_cast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__304)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__304 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__303, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast, 1200, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__304)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1201:         try:

      /* "pandas/internals.pyx":1201
     *
     *     def _try_cast(self, element):
     *         try:             # <<<<<<<<<<<<<<
     *             return float(element)
     *         except:  # pragma: no cover
     */
      {
        /*try:*/ {

     1202:             return float(element)

          /* "pandas/internals.pyx":1202
     *     def _try_cast(self, element):
     *         try:
     *             return float(element)             # <<<<<<<<<<<<<<
     *         except:  # pragma: no cover
     *             return element
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = __Pyx_PyObject_AsDouble(__pyx_v_element); if (unlikely(__pyx_t_4 == ((double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1202; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __pyx_t_5 = PyFloat_FromDouble(__pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1202; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_r = __pyx_t_5;
          __pyx_t_5 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

     1203:         except:  # pragma: no cover

        /* "pandas/internals.pyx":1203
     *         try:
     *             return float(element)
     *         except:  # pragma: no cover             # <<<<<<<<<<<<<<
     *             return element
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.FloatBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1203; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GOTREF(__pyx_t_7);

     1204:             return element

          /* "pandas/internals.pyx":1204
     *             return float(element)
     *         except:  # pragma: no cover
     *             return element             # <<<<<<<<<<<<<<
     *
     *     def to_native_types(self, slicer=None, na_rep='', float_format=None,
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_element);
          __pyx_r = __pyx_v_element;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1205:

     1206:     def to_native_types(self, slicer=None, na_rep='', float_format=None,

    /* "pandas/internals.pyx":1206
     *             return element
     *
     *     def to_native_types(self, slicer=None, na_rep='', float_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_5to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_10FloatBlock_4to_native_types[] = " convert to our native types format, slicing if desired ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_10FloatBlock_5to_native_types = {__Pyx_NAMESTR("to_native_types"), (PyCFunction)__pyx_pw_6pandas_9internals_10FloatBlock_5to_native_types, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_10FloatBlock_4to_native_types)};
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_5to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slicer = 0;
      PyObject *__pyx_v_na_rep = 0;
      PyObject *__pyx_v_float_format = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slicer,&__pyx_n_s_na_rep,&__pyx_n_s_float_format,0};
        PyObject* values[4] = {0,0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        values[2] = ((PyObject *)((PyObject*)__pyx_kp_s__6));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slicer);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_na_rep);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_float_format);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "to_native_types") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_slicer = values[1];
        __pyx_v_na_rep = values[2];
        __pyx_v_float_format = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("to_native_types", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.FloatBlock.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_10FloatBlock_4to_native_types(__pyx_self, __pyx_v_self, __pyx_v_slicer, __pyx_v_na_rep, __pyx_v_float_format, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_10FloatBlock_4to_native_types(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slicer, PyObject *__pyx_v_na_rep, PyObject *__pyx_v_float_format, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_imask = NULL;
      PyObject *__pyx_v_val = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types", 0);

      /* "pandas/internals.pyx":1206
     *             return element
     *
     *     def to_native_types(self, slicer=None, na_rep='', float_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.FloatBlock.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_imask);
      __Pyx_XDECREF(__pyx_v_val);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1206
     *             return element
     *
     *     def to_native_types(self, slicer=None, na_rep='', float_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */
      __pyx_tuple__305 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_slicer, __pyx_n_s_na_rep, __pyx_n_s_float_format, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_values, __pyx_n_s_mask, __pyx_n_s_imask, __pyx_n_s_val); if (unlikely(!__pyx_tuple__305)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__305);
      __Pyx_GIVEREF(__pyx_tuple__305);
      __pyx_codeobj__306 = (PyObject*)__Pyx_PyCode_New(4, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__305, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_to_native_types, 1206, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__306)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1206
     *             return element
     *
     *     def to_native_types(self, slicer=None, na_rep='', float_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_10FloatBlock_5to_native_types, 0, __pyx_n_s_FloatBlock_to_native_types, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__306)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__307);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_to_native_types, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__307 = PyTuple_Pack(3, ((PyObject *)Py_None), ((PyObject*)__pyx_kp_s__6), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__307)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__307);
      __Pyx_GIVEREF(__pyx_tuple__307);

     1207:                         **kwargs):

     1208:         """ convert to our native types format, slicing if desired """

     1209:

     1210:         values = self.values

      /* "pandas/internals.pyx":1210
     *         """ convert to our native types format, slicing if desired """
     *
     *         values = self.values             # <<<<<<<<<<<<<<
     *         if slicer is not None:
     *             values = values[:, slicer]
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1211:         if slicer is not None:

      /* "pandas/internals.pyx":1211
     *
     *         values = self.values
     *         if slicer is not None:             # <<<<<<<<<<<<<<
     *             values = values[:, slicer]
     *         values = np.array(values, dtype=object)
     */
      __pyx_t_2 = (__pyx_v_slicer != Py_None);
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     1212:             values = values[:, slicer]

        /* "pandas/internals.pyx":1212
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)
     */
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1212; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_slice__29);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_slice__29);
        __Pyx_GIVEREF(__pyx_slice__29);
        __Pyx_INCREF(__pyx_v_slicer);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_slicer);
        __Pyx_GIVEREF(__pyx_v_slicer);
        __pyx_t_4 = PyObject_GetItem(__pyx_v_values, __pyx_t_1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1212; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":1212
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)
     */
      __pyx_slice__29 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__29)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1212; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__29);
      __Pyx_GIVEREF(__pyx_slice__29);

     1213:         values = np.array(values, dtype=object)

      /* "pandas/internals.pyx":1213
     *         if slicer is not None:
     *             values = values[:, slicer]
     *         values = np.array(values, dtype=object)             # <<<<<<<<<<<<<<
     *         mask = isnull(values)
     *         values[mask] = na_rep
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_array); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_6);
      __pyx_t_6 = 0;

     1214:         mask = isnull(values)

      /* "pandas/internals.pyx":1214
     *             values = values[:, slicer]
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)             # <<<<<<<<<<<<<<
     *         values[mask] = na_rep
     *         if float_format:
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1214; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1214; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1214; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_mask = __pyx_t_4;
      __pyx_t_4 = 0;

     1215:         values[mask] = na_rep

      /* "pandas/internals.pyx":1215
     *         values = np.array(values, dtype=object)
     *         mask = isnull(values)
     *         values[mask] = na_rep             # <<<<<<<<<<<<<<
     *         if float_format:
     *             imask = (-mask).ravel()
     */
      if (unlikely(PyObject_SetItem(__pyx_v_values, __pyx_v_mask, __pyx_v_na_rep) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1215; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1216:         if float_format:

      /* "pandas/internals.pyx":1216
     *         mask = isnull(values)
     *         values[mask] = na_rep
     *         if float_format:             # <<<<<<<<<<<<<<
     *             imask = (-mask).ravel()
     *             values.flat[imask] = np.array(
     */
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_float_format); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1216; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_3) {

     1217:             imask = (-mask).ravel()

        /* "pandas/internals.pyx":1217
     *         values[mask] = na_rep
     *         if float_format:
     *             imask = (-mask).ravel()             # <<<<<<<<<<<<<<
     *             values.flat[imask] = np.array(
     *                 [float_format % val for val in values.ravel()[imask]])
     */
        __pyx_t_4 = PyNumber_Negative(__pyx_v_mask); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1217; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_ravel); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1217; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1217; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_imask = __pyx_t_4;
        __pyx_t_4 = 0;

     1218:             values.flat[imask] = np.array(

        /* "pandas/internals.pyx":1218
     *         if float_format:
     *             imask = (-mask).ravel()
     *             values.flat[imask] = np.array(             # <<<<<<<<<<<<<<
     *                 [float_format % val for val in values.ravel()[imask]])
     *         return values.tolist()
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_array); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

        /* "pandas/internals.pyx":1218
     *         if float_format:
     *             imask = (-mask).ravel()
     *             values.flat[imask] = np.array(             # <<<<<<<<<<<<<<
     *                 [float_format % val for val in values.ravel()[imask]])
     *         return values.tolist()
     */
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_flat); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (unlikely(PyObject_SetItem(__pyx_t_1, __pyx_v_imask, __pyx_t_4) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     1219:                 [float_format % val for val in values.ravel()[imask]])

        /* "pandas/internals.pyx":1219
     *             imask = (-mask).ravel()
     *             values.flat[imask] = np.array(
     *                 [float_format % val for val in values.ravel()[imask]])             # <<<<<<<<<<<<<<
     *         return values.tolist()
     *
     */
        __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ravel); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_GetItem(__pyx_t_1, __pyx_v_imask); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
          __pyx_t_1 = __pyx_t_6; __Pyx_INCREF(__pyx_t_1); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_6 = __pyx_t_8(__pyx_t_1);
            if (unlikely(!__pyx_t_6)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_6);
          }
          __Pyx_XDECREF_SET(__pyx_v_val, __pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_6 = PyNumber_Remainder(__pyx_v_float_format, __pyx_v_val); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_6))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1220:         return values.tolist()

      /* "pandas/internals.pyx":1220
     *             values.flat[imask] = np.array(
     *                 [float_format % val for val in values.ravel()[imask]])
     *         return values.tolist()             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_tolist); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1221:

     1222:     def should_store(self, value):

    /* "pandas/internals.pyx":1222
     *         return values.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         # when inserting a column should not coerce integers to floats
     *         # unnecessarily
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_7should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_10FloatBlock_7should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_10FloatBlock_7should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_10FloatBlock_7should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1222; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1222; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1222; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.FloatBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_10FloatBlock_6should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_10FloatBlock_6should_store(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1222
     *         return values.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         # when inserting a column should not coerce integers to floats
     *         # unnecessarily
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.FloatBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1222
     *         return values.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         # when inserting a column should not coerce integers to floats
     *         # unnecessarily
     */
      __pyx_tuple__308 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__308)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__308);
      __Pyx_GIVEREF(__pyx_tuple__308);

      /* "pandas/internals.pyx":1222
     *         return values.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         # when inserting a column should not coerce integers to floats
     *         # unnecessarily
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_10FloatBlock_7should_store, 0, __pyx_n_s_FloatBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__309)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__309 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__308, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1222, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__309)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1223:         # when inserting a column should not coerce integers to floats

     1224:         # unnecessarily

     1225:         return (issubclass(value.dtype.type, np.floating) and

      /* "pandas/internals.pyx":1225
     *         # when inserting a column should not coerce integers to floats
     *         # unnecessarily
     *         return (issubclass(value.dtype.type, np.floating) and             # <<<<<<<<<<<<<<
     *                 value.dtype == self.dtype)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_floating); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1225; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     1226:                 value.dtype == self.dtype)

        /* "pandas/internals.pyx":1226
     *         # unnecessarily
     *         return (issubclass(value.dtype.type, np.floating) and
     *                 value.dtype == self.dtype)             # <<<<<<<<<<<<<<
     *
     * class ComplexBlock(FloatOrComplexBlock):
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyObject_RichCompare(__pyx_t_2, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __pyx_t_5;
        __pyx_t_5 = 0;
      } else {
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1227:

     1228: class ComplexBlock(FloatOrComplexBlock):

      /* "pandas/internals.pyx":1228
     *                 value.dtype == self.dtype)
     *
     * class ComplexBlock(FloatOrComplexBlock):             # <<<<<<<<<<<<<<
     *     is_complex = True
     *
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_FloatOrComplexBlock); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_ComplexBlock, __pyx_n_s_ComplexBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1228
     *                 value.dtype == self.dtype)
     *
     * class ComplexBlock(FloatOrComplexBlock):             # <<<<<<<<<<<<<<
     *     is_complex = True
     *
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_ComplexBlock, __pyx_t_1, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_ComplexBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1228; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1229:     is_complex = True

      /* "pandas/internals.pyx":1229
     *
     * class ComplexBlock(FloatOrComplexBlock):
     *     is_complex = True             # <<<<<<<<<<<<<<
     *
     *     def _can_hold_element(self, element):
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_complex, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1229; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1230:

     1231:     def _can_hold_element(self, element):

    /* "pandas/internals.pyx":1231
     *     is_complex = True
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return isinstance(element, complex)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12ComplexBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12ComplexBlock_1_can_hold_element = {__Pyx_NAMESTR("_can_hold_element"), (PyCFunction)__pyx_pw_6pandas_9internals_12ComplexBlock_1_can_hold_element, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12ComplexBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1231; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_can_hold_element") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1231; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1231; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ComplexBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12ComplexBlock__can_hold_element(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12ComplexBlock__can_hold_element(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element", 0);

      /* "pandas/internals.pyx":1231
     *     is_complex = True
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return isinstance(element, complex)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.ComplexBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1231
     *     is_complex = True
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return isinstance(element, complex)
     *
     */
      __pyx_tuple__310 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__310)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__310);
      __Pyx_GIVEREF(__pyx_tuple__310);

      /* "pandas/internals.pyx":1231
     *     is_complex = True
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return isinstance(element, complex)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12ComplexBlock_1_can_hold_element, 0, __pyx_n_s_ComplexBlock__can_hold_element, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__311)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_element, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__311 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__310, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_element, 1231, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__311)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1232:         return isinstance(element, complex)

      /* "pandas/internals.pyx":1232
     *
     *     def _can_hold_element(self, element):
     *         return isinstance(element, complex)             # <<<<<<<<<<<<<<
     *
     *     def _try_cast(self, element):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyComplex_Check(__pyx_v_element);
      __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1232; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1233:

     1234:     def _try_cast(self, element):

    /* "pandas/internals.pyx":1234
     *         return isinstance(element, complex)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return complex(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12ComplexBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12ComplexBlock_3_try_cast = {__Pyx_NAMESTR("_try_cast"), (PyCFunction)__pyx_pw_6pandas_9internals_12ComplexBlock_3_try_cast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12ComplexBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ComplexBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12ComplexBlock_2_try_cast(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12ComplexBlock_2_try_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast", 0);

      /* "pandas/internals.pyx":1234
     *         return isinstance(element, complex)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return complex(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.ComplexBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1234
     *         return isinstance(element, complex)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return complex(element)
     */
      __pyx_tuple__312 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__312)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__312);
      __Pyx_GIVEREF(__pyx_tuple__312);

      /* "pandas/internals.pyx":1234
     *         return isinstance(element, complex)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return complex(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12ComplexBlock_3_try_cast, 0, __pyx_n_s_ComplexBlock__try_cast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__313)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__313 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__312, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast, 1234, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__313)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1234; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1235:         try:

      /* "pandas/internals.pyx":1235
     *
     *     def _try_cast(self, element):
     *         try:             # <<<<<<<<<<<<<<
     *             return complex(element)
     *         except:  # pragma: no cover
     */
      {
        /*try:*/ {

     1236:             return complex(element)

          /* "pandas/internals.pyx":1236
     *     def _try_cast(self, element):
     *         try:
     *             return complex(element)             # <<<<<<<<<<<<<<
     *         except:  # pragma: no cover
     *             return element
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1236; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_element);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_element);
          __Pyx_GIVEREF(__pyx_v_element);
          __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PyComplex_Type))), __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1236; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_r = __pyx_t_5;
          __pyx_t_5 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

     1237:         except:  # pragma: no cover

        /* "pandas/internals.pyx":1237
     *         try:
     *             return complex(element)
     *         except:  # pragma: no cover             # <<<<<<<<<<<<<<
     *             return element
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.ComplexBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1237; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_6);

     1238:             return element

          /* "pandas/internals.pyx":1238
     *             return complex(element)
     *         except:  # pragma: no cover
     *             return element             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_element);
          __pyx_r = __pyx_v_element;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1239:

     1240:     def should_store(self, value):

    /* "pandas/internals.pyx":1240
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.complexfloating)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12ComplexBlock_5should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12ComplexBlock_5should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_12ComplexBlock_5should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12ComplexBlock_5should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1240; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1240; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1240; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ComplexBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12ComplexBlock_4should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12ComplexBlock_4should_store(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1240
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.complexfloating)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.ComplexBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1240
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.complexfloating)
     *
     */
      __pyx_tuple__314 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__314)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1240; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__314);
      __Pyx_GIVEREF(__pyx_tuple__314);

      /* "pandas/internals.pyx":1240
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.complexfloating)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12ComplexBlock_5should_store, 0, __pyx_n_s_ComplexBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__315)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1240; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1240; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__315 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__314, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1240, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__315)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1240; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1241:         return issubclass(value.dtype.type, np.complexfloating)

      /* "pandas/internals.pyx":1241
     *
     *     def should_store(self, value):
     *         return issubclass(value.dtype.type, np.complexfloating)             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_complexfloating); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1242:

     1243:

     1244: class IntBlock(NumericBlock):

      /* "pandas/internals.pyx":1244
     *
     *
     * class IntBlock(NumericBlock):             # <<<<<<<<<<<<<<
     *     is_integer = True
     *     _can_hold_na = False
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_NumericBlock); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_2, __pyx_n_s_IntBlock, __pyx_n_s_IntBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1244
     *
     *
     * class IntBlock(NumericBlock):             # <<<<<<<<<<<<<<
     *     is_integer = True
     *     _can_hold_na = False
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_IntBlock, __pyx_t_2, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_IntBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1245:     is_integer = True

      /* "pandas/internals.pyx":1245
     *
     * class IntBlock(NumericBlock):
     *     is_integer = True             # <<<<<<<<<<<<<<
     *     _can_hold_na = False
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_integer, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1246:     _can_hold_na = False

      /* "pandas/internals.pyx":1246
     * class IntBlock(NumericBlock):
     *     is_integer = True
     *     _can_hold_na = False             # <<<<<<<<<<<<<<
     *
     *     def _can_hold_element(self, element):
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1247:

     1248:     def _can_hold_element(self, element):

    /* "pandas/internals.pyx":1248
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_8IntBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_8IntBlock_1_can_hold_element = {__Pyx_NAMESTR("_can_hold_element"), (PyCFunction)__pyx_pw_6pandas_9internals_8IntBlock_1_can_hold_element, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_8IntBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1248; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_can_hold_element") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1248; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1248; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.IntBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_8IntBlock__can_hold_element(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_8IntBlock__can_hold_element(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element", 0);
      __Pyx_INCREF(__pyx_v_element);

      /* "pandas/internals.pyx":1248
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.IntBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_element);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1248
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_tuple__316 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__316)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1248; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__316);
      __Pyx_GIVEREF(__pyx_tuple__316);

      /* "pandas/internals.pyx":1248
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_8IntBlock_1_can_hold_element, 0, __pyx_n_s_IntBlock__can_hold_element, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__317)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1248; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_element, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1248; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__317 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__316, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_element, 1248, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__317)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1248; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1249:         if is_list_like(element):

      /* "pandas/internals.pyx":1249
     *
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):             # <<<<<<<<<<<<<<
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, np.integer)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_element);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_element);
      __Pyx_GIVEREF(__pyx_v_element);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     1250:             element = np.array(element)

        /* "pandas/internals.pyx":1250
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):
     *             element = np.array(element)             # <<<<<<<<<<<<<<
     *             return issubclass(element.dtype.type, np.integer)
     *         return com.is_integer(element)
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_element);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_element);
        __Pyx_GIVEREF(__pyx_v_element);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_element, __pyx_t_1);
        __pyx_t_1 = 0;

     1251:             return issubclass(element.dtype.type, np.integer)

        /* "pandas/internals.pyx":1251
     *         if is_list_like(element):
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, np.integer)             # <<<<<<<<<<<<<<
     *         return com.is_integer(element)
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_element, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_integer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_4 = PyObject_IsSubclass(__pyx_t_3, __pyx_t_2); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }

     1252:         return com.is_integer(element)

      /* "pandas/internals.pyx":1252
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, np.integer)
     *         return com.is_integer(element)             # <<<<<<<<<<<<<<
     *
     *     def _try_cast(self, element):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_is_integer); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_element);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_element);
      __Pyx_GIVEREF(__pyx_v_element);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1253:

     1254:     def _try_cast(self, element):

    /* "pandas/internals.pyx":1254
     *         return com.is_integer(element)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_8IntBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_8IntBlock_3_try_cast = {__Pyx_NAMESTR("_try_cast"), (PyCFunction)__pyx_pw_6pandas_9internals_8IntBlock_3_try_cast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_8IntBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.IntBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_8IntBlock_2_try_cast(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_8IntBlock_2_try_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast", 0);

      /* "pandas/internals.pyx":1254
     *         return com.is_integer(element)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.IntBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1254
     *         return com.is_integer(element)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */
      __pyx_tuple__318 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__318)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__318);
      __Pyx_GIVEREF(__pyx_tuple__318);

      /* "pandas/internals.pyx":1254
     *         return com.is_integer(element)
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_8IntBlock_3_try_cast, 0, __pyx_n_s_IntBlock__try_cast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__319)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__319 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__318, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast, 1254, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__319)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1254; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1255:         try:

      /* "pandas/internals.pyx":1255
     *
     *     def _try_cast(self, element):
     *         try:             # <<<<<<<<<<<<<<
     *             return int(element)
     *         except:  # pragma: no cover
     */
      {
        /*try:*/ {

     1256:             return int(element)

          /* "pandas/internals.pyx":1256
     *     def _try_cast(self, element):
     *         try:
     *             return int(element)             # <<<<<<<<<<<<<<
     *         except:  # pragma: no cover
     *             return element
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = PyNumber_Int(__pyx_v_element); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1256; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_r = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

     1257:         except:  # pragma: no cover

        /* "pandas/internals.pyx":1257
     *         try:
     *             return int(element)
     *         except:  # pragma: no cover             # <<<<<<<<<<<<<<
     *             return element
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.IntBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1257; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_6);

     1258:             return element

          /* "pandas/internals.pyx":1258
     *             return int(element)
     *         except:  # pragma: no cover
     *             return element             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_element);
          __pyx_r = __pyx_v_element;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1259:

     1260:     def should_store(self, value):

    /* "pandas/internals.pyx":1260
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return com.is_integer_dtype(value) and value.dtype == self.dtype
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_8IntBlock_5should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_8IntBlock_5should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_8IntBlock_5should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_8IntBlock_5should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1260; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1260; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1260; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.IntBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_8IntBlock_4should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_8IntBlock_4should_store(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1260
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return com.is_integer_dtype(value) and value.dtype == self.dtype
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.IntBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1260
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return com.is_integer_dtype(value) and value.dtype == self.dtype
     *
     */
      __pyx_tuple__320 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__320)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1260; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__320);
      __Pyx_GIVEREF(__pyx_tuple__320);

      /* "pandas/internals.pyx":1260
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return com.is_integer_dtype(value) and value.dtype == self.dtype
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_8IntBlock_5should_store, 0, __pyx_n_s_IntBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__321)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1260; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1260; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__321 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__320, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1260, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__321)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1260; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1261:         return com.is_integer_dtype(value) and value.dtype == self.dtype

      /* "pandas/internals.pyx":1261
     *
     *     def should_store(self, value):
     *         return com.is_integer_dtype(value) and value.dtype == self.dtype             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_integer_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = PyObject_RichCompare(__pyx_t_1, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __pyx_t_5;
        __pyx_t_5 = 0;
      } else {
        __pyx_t_2 = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1262:

     1263:

     1264: class TimeDeltaBlock(IntBlock):

      /* "pandas/internals.pyx":1264
     *
     *
     * class TimeDeltaBlock(IntBlock):             # <<<<<<<<<<<<<<
     *     is_timedelta = True
     *     _can_hold_na = True
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_IntBlock); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_TimeDeltaBlock, __pyx_n_s_TimeDeltaBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1264
     *
     *
     * class TimeDeltaBlock(IntBlock):             # <<<<<<<<<<<<<<
     *     is_timedelta = True
     *     _can_hold_na = True
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_TimeDeltaBlock, __pyx_t_1, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_TimeDeltaBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1265:     is_timedelta = True

      /* "pandas/internals.pyx":1265
     *
     * class TimeDeltaBlock(IntBlock):
     *     is_timedelta = True             # <<<<<<<<<<<<<<
     *     _can_hold_na = True
     *     is_numeric = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_timedelta, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1266:     _can_hold_na = True

      /* "pandas/internals.pyx":1266
     * class TimeDeltaBlock(IntBlock):
     *     is_timedelta = True
     *     _can_hold_na = True             # <<<<<<<<<<<<<<
     *     is_numeric = False
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1266; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1267:     is_numeric = False

      /* "pandas/internals.pyx":1267
     *     is_timedelta = True
     *     _can_hold_na = True
     *     is_numeric = False             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_numeric, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1267; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1268:

     1269:     @property

      /* "pandas/internals.pyx":1269
     *     is_numeric = False
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def fill_value(self):
     *         return tslib.iNaT
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1270:     def fill_value(self):

    /* "pandas/internals.pyx":1270
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_1fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_1fill_value = {__Pyx_NAMESTR("fill_value"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_1fill_value, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_1fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_fill_value(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_fill_value(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value", 0);

      /* "pandas/internals.pyx":1270
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock.fill_value", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1270
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */
      __pyx_tuple__322 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__322)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__322);
      __Pyx_GIVEREF(__pyx_tuple__322);

      /* "pandas/internals.pyx":1270
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_1fill_value, 0, __pyx_n_s_TimeDeltaBlock_fill_value, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__323)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__323 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__322, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fill_value, 1270, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__323)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1271:         return tslib.iNaT

      /* "pandas/internals.pyx":1271
     *     @property
     *     def fill_value(self):
     *         return tslib.iNaT             # <<<<<<<<<<<<<<
     *
     *     def _try_fill(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_iNaT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1272:

     1273:     def _try_fill(self, value):

    /* "pandas/internals.pyx":1273
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_3_try_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_14TimeDeltaBlock_2_try_fill[] = " if we are a NaT, return the actual fill value ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_3_try_fill = {__Pyx_NAMESTR("_try_fill"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_3_try_fill, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_14TimeDeltaBlock_2_try_fill)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_3_try_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_fill (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_fill", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1273; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_fill") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1273; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_fill", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1273; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_fill", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_2_try_fill(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_2_try_fill(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_fill", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":1273
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_fill", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1273
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */
      __pyx_tuple__324 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__324)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1273; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__324);
      __Pyx_GIVEREF(__pyx_tuple__324);

      /* "pandas/internals.pyx":1273
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_3_try_fill, 0, __pyx_n_s_TimeDeltaBlock__try_fill, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__325)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1273; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_fill, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1273; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__325 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__324, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_fill, 1273, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__325)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1273; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1274:         """ if we are a NaT, return the actual fill value """

     1275:         if isinstance(value, type(tslib.NaT)) or isnull(value):

      /* "pandas/internals.pyx":1275
     *     def _try_fill(self, value):
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):             # <<<<<<<<<<<<<<
     *             value = tslib.iNaT
     *         elif isinstance(value, np.timedelta64):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_NaT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = PyObject_IsInstance(__pyx_v_value, ((PyObject *)Py_TYPE(__pyx_t_2))); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (!__pyx_t_3) {
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_3;
      }
      if (__pyx_t_6) {

     1276:             value = tslib.iNaT

        /* "pandas/internals.pyx":1276
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     *             value = tslib.iNaT             # <<<<<<<<<<<<<<
     *         elif isinstance(value, np.timedelta64):
     *             pass
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1276; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_iNaT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1276; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }

     1277:         elif isinstance(value, np.timedelta64):

      /* "pandas/internals.pyx":1277
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     *             value = tslib.iNaT
     *         elif isinstance(value, np.timedelta64):             # <<<<<<<<<<<<<<
     *             pass
     *         elif com.is_integer(value):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_timedelta64); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_6 = PyObject_IsInstance(__pyx_v_value, __pyx_t_4); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_3 = (__pyx_t_6 != 0);
      if (__pyx_t_3) {
        goto __pyx_L3;
      }

     1278:             pass

     1279:         elif com.is_integer(value):

      /* "pandas/internals.pyx":1279
     *         elif isinstance(value, np.timedelta64):
     *             pass
     *         elif com.is_integer(value):             # <<<<<<<<<<<<<<
     *             # coerce to seconds of timedelta
     *             value = np.timedelta64(int(value * 1e9))
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_is_integer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     1280:             # coerce to seconds of timedelta

     1281:             value = np.timedelta64(int(value * 1e9))

        /* "pandas/internals.pyx":1281
     *         elif com.is_integer(value):
     *             # coerce to seconds of timedelta
     *             value = np.timedelta64(int(value * 1e9))             # <<<<<<<<<<<<<<
     *         elif isinstance(value, timedelta):
     *             value = np.timedelta64(value)
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_timedelta64); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyNumber_Multiply(__pyx_v_value, __pyx_float_1e9); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyNumber_Int(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }

     1282:         elif isinstance(value, timedelta):

      /* "pandas/internals.pyx":1282
     *             # coerce to seconds of timedelta
     *             value = np.timedelta64(int(value * 1e9))
     *         elif isinstance(value, timedelta):             # <<<<<<<<<<<<<<
     *             value = np.timedelta64(value)
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_timedelta); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1282; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyObject_IsInstance(__pyx_v_value, __pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1282; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_6 = (__pyx_t_3 != 0);
      if (__pyx_t_6) {

     1283:             value = np.timedelta64(value)

        /* "pandas/internals.pyx":1283
     *             value = np.timedelta64(int(value * 1e9))
     *         elif isinstance(value, timedelta):
     *             value = np.timedelta64(value)             # <<<<<<<<<<<<<<
     *
     *         return value
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_timedelta64); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1284:

     1285:         return value

      /* "pandas/internals.pyx":1285
     *             value = np.timedelta64(value)
     *
     *         return value             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_args(self, values, other):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_value);
      __pyx_r = __pyx_v_value;
      goto __pyx_L0;

     1286:

     1287:     def _try_coerce_args(self, values, other):

    /* "pandas/internals.pyx":1287
     *         return value
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to floats
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_5_try_coerce_args(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_14TimeDeltaBlock_4_try_coerce_args[] = " provide coercion to our input arguments\n            we are going to compare vs i8, so coerce to floats\n            repring NaT with np.nan so nans propagate\n            values is always ndarray like, other may not be ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_5_try_coerce_args = {__Pyx_NAMESTR("_try_coerce_args"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_5_try_coerce_args, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_14TimeDeltaBlock_4_try_coerce_args)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_5_try_coerce_args(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_args (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_other,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_coerce_args") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_other = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_coerce_args", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_4_try_coerce_args(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":1287
     *         return value
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to floats
     */

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_4_try_coerce_args(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_other) {
      PyObject *__pyx_v_masker = 0;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_args", 0);
      __Pyx_INCREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_other);

      /* "pandas/internals.pyx":1287
     *         return value
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to floats
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_coerce_args", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_masker);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_other);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1287
     *         return value
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to floats
     */
      __pyx_tuple__326 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_other, __pyx_n_s_masker, __pyx_n_s_masker); if (unlikely(!__pyx_tuple__326)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__326);
      __Pyx_GIVEREF(__pyx_tuple__326);

      /* "pandas/internals.pyx":1287
     *         return value
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to floats
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_5_try_coerce_args, 0, __pyx_n_s_TimeDeltaBlock__try_coerce_args_2, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__327)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_coerce_args, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__327 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__326, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_coerce_args, 1287, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__327)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1287; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1288:         """ provide coercion to our input arguments

     1289:             we are going to compare vs i8, so coerce to floats

     1290:             repring NaT with np.nan so nans propagate

     1291:             values is always ndarray like, other may not be """

     1292:         def masker(v):

    /* "pandas/internals.pyx":1292
     *             repring NaT with np.nan so nans propagate
     *             values is always ndarray like, other may not be """
     *         def masker(v):             # <<<<<<<<<<<<<<
     *             mask = isnull(v)
     *             v = v.view('i8').astype('float64')
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_1masker(PyObject *__pyx_self, PyObject *__pyx_v_v); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_1masker = {__Pyx_NAMESTR("masker"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_1masker, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_1masker(PyObject *__pyx_self, PyObject *__pyx_v_v) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("masker (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_masker(__pyx_self, ((PyObject *)__pyx_v_v));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_masker(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_v) {
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("masker", 0);
      __Pyx_INCREF(__pyx_v_v);

      /* "pandas/internals.pyx":1292
     *             repring NaT with np.nan so nans propagate
     *             values is always ndarray like, other may not be """
     *         def masker(v):             # <<<<<<<<<<<<<<
     *             mask = isnull(v)
     *             v = v.view('i8').astype('float64')
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_coerce_args.masker", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1292
     *             repring NaT with np.nan so nans propagate
     *             values is always ndarray like, other may not be """
     *         def masker(v):             # <<<<<<<<<<<<<<
     *             mask = isnull(v)
     *             v = v.view('i8').astype('float64')
     */
      __pyx_tuple__32 = PyTuple_Pack(2, __pyx_n_s_v, __pyx_n_s_mask); if (unlikely(!__pyx_tuple__32)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__32);
      __Pyx_GIVEREF(__pyx_tuple__32);

      /* "pandas/internals.pyx":1292
     *             repring NaT with np.nan so nans propagate
     *             values is always ndarray like, other may not be """
     *         def masker(v):             # <<<<<<<<<<<<<<
     *             mask = isnull(v)
     *             v = v.view('i8').astype('float64')
     */
      __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_1masker, 0, __pyx_n_s_TimeDeltaBlock__try_coerce_args, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__33)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_masker = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_codeobj__33 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__32, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_masker, 1292, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__33)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1293:             mask = isnull(v)

      /* "pandas/internals.pyx":1293
     *             values is always ndarray like, other may not be """
     *         def masker(v):
     *             mask = isnull(v)             # <<<<<<<<<<<<<<
     *             v = v.view('i8').astype('float64')
     *             v[mask] = np.nan
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_v);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_v);
      __Pyx_GIVEREF(__pyx_v_v);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_mask = __pyx_t_3;
      __pyx_t_3 = 0;

     1294:             v = v.view('i8').astype('float64')

      /* "pandas/internals.pyx":1294
     *         def masker(v):
     *             mask = isnull(v)
     *             v = v.view('i8').astype('float64')             # <<<<<<<<<<<<<<
     *             v[mask] = np.nan
     *             return v
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_tuple__30, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_astype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* "pandas/internals.pyx":1294
     *         def masker(v):
     *             mask = isnull(v)
     *             v = v.view('i8').astype('float64')             # <<<<<<<<<<<<<<
     *             v[mask] = np.nan
     *             return v
     */
      __pyx_tuple__30 = PyTuple_Pack(1, __pyx_n_s_i8); if (unlikely(!__pyx_tuple__30)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__30);
      __Pyx_GIVEREF(__pyx_tuple__30);
      __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_tuple__31, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF_SET(__pyx_v_v, __pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_tuple__31 = PyTuple_Pack(1, __pyx_n_s_float64); if (unlikely(!__pyx_tuple__31)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__31);
      __Pyx_GIVEREF(__pyx_tuple__31);

     1295:             v[mask] = np.nan

      /* "pandas/internals.pyx":1295
     *             mask = isnull(v)
     *             v = v.view('i8').astype('float64')
     *             v[mask] = np.nan             # <<<<<<<<<<<<<<
     *             return v
     *
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_nan); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(PyObject_SetItem(__pyx_v_v, __pyx_v_mask, __pyx_t_3) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     1296:             return v

      /* "pandas/internals.pyx":1296
     *             v = v.view('i8').astype('float64')
     *             v[mask] = np.nan
     *             return v             # <<<<<<<<<<<<<<
     *
     *         values = masker(values)
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_v);
      __pyx_r = __pyx_v_v;
      goto __pyx_L0;

     1297:

     1298:         values = masker(values)

      /* "pandas/internals.pyx":1298
     *             return v
     *
     *         values = masker(values)             # <<<<<<<<<<<<<<
     *
     *         if _is_null_datelike_scalar(other):
     */
      __pyx_t_1 = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_masker(__pyx_v_masker, __pyx_v_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1298; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
      __pyx_t_1 = 0;

     1299:

     1300:         if _is_null_datelike_scalar(other):

      /* "pandas/internals.pyx":1300
     *         values = masker(values)
     *
     *         if _is_null_datelike_scalar(other):             # <<<<<<<<<<<<<<
     *             other = np.nan
     *         elif isinstance(other, np.timedelta64):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_null_datelike_scalar); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     1301:             other = np.nan

        /* "pandas/internals.pyx":1301
     *
     *         if _is_null_datelike_scalar(other):
     *             other = np.nan             # <<<<<<<<<<<<<<
     *         elif isinstance(other, np.timedelta64):
     *             other = _coerce_scalar_to_timedelta_type(other, unit='s').item()
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_nan); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_2);
        __pyx_t_2 = 0;
        goto __pyx_L3;
      }

     1302:         elif isinstance(other, np.timedelta64):

      /* "pandas/internals.pyx":1302
     *         if _is_null_datelike_scalar(other):
     *             other = np.nan
     *         elif isinstance(other, np.timedelta64):             # <<<<<<<<<<<<<<
     *             other = _coerce_scalar_to_timedelta_type(other, unit='s').item()
     *             if other == tslib.iNaT:
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_timedelta64); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = PyObject_IsInstance(__pyx_v_other, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1302; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     1303:             other = _coerce_scalar_to_timedelta_type(other, unit='s').item()

        /* "pandas/internals.pyx":1303
     *             other = np.nan
     *         elif isinstance(other, np.timedelta64):
     *             other = _coerce_scalar_to_timedelta_type(other, unit='s').item()             # <<<<<<<<<<<<<<
     *             if other == tslib.iNaT:
     *                 other = np.nan
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_coerce_scalar_to_timedelta_type); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_other);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_other);
        __Pyx_GIVEREF(__pyx_v_other);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_unit, __pyx_n_s_s) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_item); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_6);
        __pyx_t_6 = 0;

     1304:             if other == tslib.iNaT:

        /* "pandas/internals.pyx":1304
     *         elif isinstance(other, np.timedelta64):
     *             other = _coerce_scalar_to_timedelta_type(other, unit='s').item()
     *             if other == tslib.iNaT:             # <<<<<<<<<<<<<<
     *                 other = np.nan
     *         else:
     */
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_iNaT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_RichCompare(__pyx_v_other, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (__pyx_t_5) {

     1305:                 other = np.nan

          /* "pandas/internals.pyx":1305
     *             other = _coerce_scalar_to_timedelta_type(other, unit='s').item()
     *             if other == tslib.iNaT:
     *                 other = np.nan             # <<<<<<<<<<<<<<
     *         else:
     *             other = masker(other)
     */
          __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_nan); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_1);
          __pyx_t_1 = 0;
          goto __pyx_L4;
        }
        __pyx_L4:;
        goto __pyx_L3;
      }
      /*else*/ {

     1306:         else:

     1307:             other = masker(other)

        /* "pandas/internals.pyx":1307
     *                 other = np.nan
     *         else:
     *             other = masker(other)             # <<<<<<<<<<<<<<
     *
     *         return values, other
     */
        __pyx_t_1 = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_16_try_coerce_args_masker(__pyx_v_masker, __pyx_v_other); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1307; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_1);
        __pyx_t_1 = 0;
      }
      __pyx_L3:;

     1308:

     1309:         return values, other

      /* "pandas/internals.pyx":1309
     *             other = masker(other)
     *
     *         return values, other             # <<<<<<<<<<<<<<
     *
     *     def _try_operate(self, values):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1310:

     1311:     def _try_operate(self, values):

    /* "pandas/internals.pyx":1311
     *         return values, other
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_7_try_operate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_14TimeDeltaBlock_6_try_operate[] = " return a version to operate on ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_7_try_operate = {__Pyx_NAMESTR("_try_operate"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_7_try_operate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_14TimeDeltaBlock_6_try_operate)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_7_try_operate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_operate (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_operate", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_operate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_operate", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_operate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_6_try_operate(__pyx_self, __pyx_v_self, __pyx_v_values);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_6_try_operate(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_values) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_operate", 0);

      /* "pandas/internals.pyx":1311
     *         return values, other
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_operate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1311
     *         return values, other
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */
      __pyx_tuple__328 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_values); if (unlikely(!__pyx_tuple__328)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__328);
      __Pyx_GIVEREF(__pyx_tuple__328);

      /* "pandas/internals.pyx":1311
     *         return values, other
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_7_try_operate, 0, __pyx_n_s_TimeDeltaBlock__try_operate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__329)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_operate, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__329 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__328, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_operate, 1311, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__329)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1312:         """ return a version to operate on """

     1313:         return values.view('i8')

      /* "pandas/internals.pyx":1313
     *     def _try_operate(self, values):
     *         """ return a version to operate on """
     *         return values.view('i8')             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_result(self, result):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_view); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_tuple__34, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":1313
     *     def _try_operate(self, values):
     *         """ return a version to operate on """
     *         return values.view('i8')             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_result(self, result):
     */
      __pyx_tuple__34 = PyTuple_Pack(1, __pyx_n_s_i8); if (unlikely(!__pyx_tuple__34)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__34);
      __Pyx_GIVEREF(__pyx_tuple__34);

     1314:

     1315:     def _try_coerce_result(self, result):

    /* "pandas/internals.pyx":1315
     *         return values.view('i8')
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args / try_operate """
     *         if isinstance(result, np.ndarray):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_9_try_coerce_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_14TimeDeltaBlock_8_try_coerce_result[] = " reverse of try_coerce_args / try_operate ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_9_try_coerce_result = {__Pyx_NAMESTR("_try_coerce_result"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_9_try_coerce_result, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_14TimeDeltaBlock_8_try_coerce_result)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_9_try_coerce_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_result = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_result (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_result,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_result", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_coerce_result") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_result = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_coerce_result", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_coerce_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_8_try_coerce_result(__pyx_self, __pyx_v_self, __pyx_v_result);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_8_try_coerce_result(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_result) {
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_result", 0);
      __Pyx_INCREF(__pyx_v_result);

      /* "pandas/internals.pyx":1315
     *         return values.view('i8')
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args / try_operate """
     *         if isinstance(result, np.ndarray):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock._try_coerce_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1315
     *         return values.view('i8')
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args / try_operate """
     *         if isinstance(result, np.ndarray):
     */
      __pyx_tuple__330 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_result, __pyx_n_s_mask); if (unlikely(!__pyx_tuple__330)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__330);
      __Pyx_GIVEREF(__pyx_tuple__330);

      /* "pandas/internals.pyx":1315
     *         return values.view('i8')
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args / try_operate """
     *         if isinstance(result, np.ndarray):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_9_try_coerce_result, 0, __pyx_n_s_TimeDeltaBlock__try_coerce_resul, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__331)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_coerce_result, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__331 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__330, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_coerce_result, 1315, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__331)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1316:         """ reverse of try_coerce_args / try_operate """

     1317:         if isinstance(result, np.ndarray):

      /* "pandas/internals.pyx":1317
     *     def _try_coerce_result(self, result):
     *         """ reverse of try_coerce_args / try_operate """
     *         if isinstance(result, np.ndarray):             # <<<<<<<<<<<<<<
     *             mask = isnull(result)
     *             if result.dtype.kind in ['i', 'f', 'O']:
     */
      __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_result, ((PyObject*)__pyx_ptype_5numpy_ndarray));
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1318:             mask = isnull(result)

        /* "pandas/internals.pyx":1318
     *         """ reverse of try_coerce_args / try_operate """
     *         if isinstance(result, np.ndarray):
     *             mask = isnull(result)             # <<<<<<<<<<<<<<
     *             if result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('m8[ns]')
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_mask = __pyx_t_5;
        __pyx_t_5 = 0;

     1319:             if result.dtype.kind in ['i', 'f', 'O']:

        /* "pandas/internals.pyx":1319
     *         if isinstance(result, np.ndarray):
     *             mask = isnull(result)
     *             if result.dtype.kind in ['i', 'f', 'O']:             # <<<<<<<<<<<<<<
     *                 result = result.astype('m8[ns]')
     *             result[mask] = tslib.iNaT
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_dtype); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_kind); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_i, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (!((int)__pyx_t_2)) {
          __pyx_t_5 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_f, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_6 = ((int)__pyx_t_1);
        } else {
          __pyx_t_6 = ((int)__pyx_t_2);
        }
        if (!__pyx_t_6) {
          __pyx_t_5 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_O, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_1 = ((int)__pyx_t_2);
        } else {
          __pyx_t_1 = __pyx_t_6;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_6 = (__pyx_t_1 != 0);
        if (__pyx_t_6) {

     1320:                 result = result.astype('m8[ns]')

          /* "pandas/internals.pyx":1320
     *             mask = isnull(result)
     *             if result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('m8[ns]')             # <<<<<<<<<<<<<<
     *             result[mask] = tslib.iNaT
     *         elif isinstance(result, np.integer):
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_astype); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1320; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_tuple__35, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1320; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_5);
          __pyx_t_5 = 0;
          goto __pyx_L4;
        }
        __pyx_L4:;

      /* "pandas/internals.pyx":1320
     *             mask = isnull(result)
     *             if result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('m8[ns]')             # <<<<<<<<<<<<<<
     *             result[mask] = tslib.iNaT
     *         elif isinstance(result, np.integer):
     */
      __pyx_tuple__35 = PyTuple_Pack(1, __pyx_kp_s_m8_ns); if (unlikely(!__pyx_tuple__35)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1320; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__35);
      __Pyx_GIVEREF(__pyx_tuple__35);

     1321:             result[mask] = tslib.iNaT

        /* "pandas/internals.pyx":1321
     *             if result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('m8[ns]')
     *             result[mask] = tslib.iNaT             # <<<<<<<<<<<<<<
     *         elif isinstance(result, np.integer):
     *             result = np.timedelta64(result)
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1321; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_iNaT); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1321; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(PyObject_SetItem(__pyx_v_result, __pyx_v_mask, __pyx_t_4) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1321; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L3;
      }

     1322:         elif isinstance(result, np.integer):

      /* "pandas/internals.pyx":1322
     *                 result = result.astype('m8[ns]')
     *             result[mask] = tslib.iNaT
     *         elif isinstance(result, np.integer):             # <<<<<<<<<<<<<<
     *             result = np.timedelta64(result)
     *         return result
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_integer); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = PyObject_IsInstance(__pyx_v_result, __pyx_t_5); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_1 = (__pyx_t_6 != 0);
      if (__pyx_t_1) {

     1323:             result = np.timedelta64(result)

        /* "pandas/internals.pyx":1323
     *             result[mask] = tslib.iNaT
     *         elif isinstance(result, np.integer):
     *             result = np.timedelta64(result)             # <<<<<<<<<<<<<<
     *         return result
     *
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_timedelta64); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1324:         return result

      /* "pandas/internals.pyx":1324
     *         elif isinstance(result, np.integer):
     *             result = np.timedelta64(result)
     *         return result             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     1325:

     1326:     def should_store(self, value):

    /* "pandas/internals.pyx":1326
     *         return result
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_11should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_11should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_11should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_11should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1326; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1326; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1326; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_10should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_10should_store(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1326
     *         return result
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1326
     *         return result
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     */
      __pyx_tuple__332 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__332)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__332);
      __Pyx_GIVEREF(__pyx_tuple__332);

      /* "pandas/internals.pyx":1326
     *         return result
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_11should_store, 0, __pyx_n_s_TimeDeltaBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__333)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__333 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__332, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1326, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__333)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1327:         return issubclass(value.dtype.type, np.timedelta64)

      /* "pandas/internals.pyx":1327
     *
     *     def should_store(self, value):
     *         return issubclass(value.dtype.type, np.timedelta64)             # <<<<<<<<<<<<<<
     *
     *     def to_native_types(self, slicer=None, na_rep=None, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_timedelta64); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1327; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1328:

     1329:     def to_native_types(self, slicer=None, na_rep=None, **kwargs):

    /* "pandas/internals.pyx":1329
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     *     def to_native_types(self, slicer=None, na_rep=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_13to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_14TimeDeltaBlock_12to_native_types[] = " convert to our native types format, slicing if desired ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_14TimeDeltaBlock_13to_native_types = {__Pyx_NAMESTR("to_native_types"), (PyCFunction)__pyx_pw_6pandas_9internals_14TimeDeltaBlock_13to_native_types, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_14TimeDeltaBlock_12to_native_types)};
    static PyObject *__pyx_pw_6pandas_9internals_14TimeDeltaBlock_13to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slicer = 0;
      PyObject *__pyx_v_na_rep = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slicer,&__pyx_n_s_na_rep,0};
        PyObject* values[3] = {0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        values[2] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slicer);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_na_rep);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "to_native_types") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1329; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_slicer = values[1];
        __pyx_v_na_rep = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("to_native_types", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1329; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_14TimeDeltaBlock_12to_native_types(__pyx_self, __pyx_v_self, __pyx_v_slicer, __pyx_v_na_rep, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_14TimeDeltaBlock_12to_native_types(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slicer, PyObject *__pyx_v_na_rep, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_rvalues = NULL;
      PyObject *__pyx_v_imask = NULL;
      PyObject *__pyx_v_val = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types", 0);
      __Pyx_INCREF(__pyx_v_na_rep);

      /* "pandas/internals.pyx":1329
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     *     def to_native_types(self, slicer=None, na_rep=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.TimeDeltaBlock.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_rvalues);
      __Pyx_XDECREF(__pyx_v_imask);
      __Pyx_XDECREF(__pyx_v_val);
      __Pyx_XDECREF(__pyx_v_na_rep);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1329
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     *     def to_native_types(self, slicer=None, na_rep=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */
      __pyx_tuple__334 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_slicer, __pyx_n_s_na_rep, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_values, __pyx_n_s_mask, __pyx_n_s_rvalues, __pyx_n_s_imask, __pyx_n_s_val); if (unlikely(!__pyx_tuple__334)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__334);
      __Pyx_GIVEREF(__pyx_tuple__334);
      __pyx_codeobj__335 = (PyObject*)__Pyx_PyCode_New(3, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__334, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_to_native_types, 1329, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__335)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1329
     *         return issubclass(value.dtype.type, np.timedelta64)
     *
     *     def to_native_types(self, slicer=None, na_rep=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert to our native types format, slicing if desired """
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_14TimeDeltaBlock_13to_native_types, 0, __pyx_n_s_TimeDeltaBlock_to_native_types, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__335)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__336);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_to_native_types, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__336 = PyTuple_Pack(2, ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__336)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__336);
      __Pyx_GIVEREF(__pyx_tuple__336);

     1330:         """ convert to our native types format, slicing if desired """

     1331:

     1332:         values = self.values

      /* "pandas/internals.pyx":1332
     *         """ convert to our native types format, slicing if desired """
     *
     *         values = self.values             # <<<<<<<<<<<<<<
     *         if slicer is not None:
     *             values = values[:, slicer]
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1332; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1333:         if slicer is not None:

      /* "pandas/internals.pyx":1333
     *
     *         values = self.values
     *         if slicer is not None:             # <<<<<<<<<<<<<<
     *             values = values[:, slicer]
     *         mask = isnull(values)
     */
      __pyx_t_2 = (__pyx_v_slicer != Py_None);
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     1334:             values = values[:, slicer]

        /* "pandas/internals.pyx":1334
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         mask = isnull(values)
     *
     */
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1334; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_slice__36);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_slice__36);
        __Pyx_GIVEREF(__pyx_slice__36);
        __Pyx_INCREF(__pyx_v_slicer);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_slicer);
        __Pyx_GIVEREF(__pyx_v_slicer);
        __pyx_t_4 = PyObject_GetItem(__pyx_v_values, __pyx_t_1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1334; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":1334
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         mask = isnull(values)
     *
     */
      __pyx_slice__36 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__36)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1334; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__36);
      __Pyx_GIVEREF(__pyx_slice__36);

     1335:         mask = isnull(values)

      /* "pandas/internals.pyx":1335
     *         if slicer is not None:
     *             values = values[:, slicer]
     *         mask = isnull(values)             # <<<<<<<<<<<<<<
     *
     *         rvalues = np.empty(values.shape, dtype=object)
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_mask = __pyx_t_5;
      __pyx_t_5 = 0;

     1336:

     1337:         rvalues = np.empty(values.shape, dtype=object)

      /* "pandas/internals.pyx":1337
     *         mask = isnull(values)
     *
     *         rvalues = np.empty(values.shape, dtype=object)             # <<<<<<<<<<<<<<
     *         if na_rep is None:
     *             na_rep = 'NaT'
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_empty); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1337; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_rvalues = __pyx_t_6;
      __pyx_t_6 = 0;

     1338:         if na_rep is None:

      /* "pandas/internals.pyx":1338
     *
     *         rvalues = np.empty(values.shape, dtype=object)
     *         if na_rep is None:             # <<<<<<<<<<<<<<
     *             na_rep = 'NaT'
     *         rvalues[mask] = na_rep
     */
      __pyx_t_3 = (__pyx_v_na_rep == Py_None);
      __pyx_t_2 = (__pyx_t_3 != 0);
      if (__pyx_t_2) {

     1339:             na_rep = 'NaT'

        /* "pandas/internals.pyx":1339
     *         rvalues = np.empty(values.shape, dtype=object)
     *         if na_rep is None:
     *             na_rep = 'NaT'             # <<<<<<<<<<<<<<
     *         rvalues[mask] = na_rep
     *         imask = (-mask).ravel()
     */
        __Pyx_INCREF(__pyx_n_s_NaT);
        __Pyx_DECREF_SET(__pyx_v_na_rep, __pyx_n_s_NaT);
        goto __pyx_L4;
      }
      __pyx_L4:;

     1340:         rvalues[mask] = na_rep

      /* "pandas/internals.pyx":1340
     *         if na_rep is None:
     *             na_rep = 'NaT'
     *         rvalues[mask] = na_rep             # <<<<<<<<<<<<<<
     *         imask = (-mask).ravel()
     *         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)
     */
      if (unlikely(PyObject_SetItem(__pyx_v_rvalues, __pyx_v_mask, __pyx_v_na_rep) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1341:         imask = (-mask).ravel()

      /* "pandas/internals.pyx":1341
     *             na_rep = 'NaT'
     *         rvalues[mask] = na_rep
     *         imask = (-mask).ravel()             # <<<<<<<<<<<<<<
     *         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)
     *                                         for val in values.ravel()[imask]],
     */
      __pyx_t_6 = PyNumber_Negative(__pyx_v_mask); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ravel); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_imask = __pyx_t_6;
      __pyx_t_6 = 0;

     1342:         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)

      /* "pandas/internals.pyx":1342
     *         rvalues[mask] = na_rep
     *         imask = (-mask).ravel()
     *         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)             # <<<<<<<<<<<<<<
     *                                         for val in values.ravel()[imask]],
     *                                        dtype=object)
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_array); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);

        /* "pandas/internals.pyx":1342
     *         rvalues[mask] = na_rep
     *         imask = (-mask).ravel()
     *         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)             # <<<<<<<<<<<<<<
     *                                         for val in values.ravel()[imask]],
     *                                        dtype=object)
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_lib); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_repr_timedelta64); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_val);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_val);
        __Pyx_GIVEREF(__pyx_v_val);
        __pyx_t_10 = PyObject_Call(__pyx_t_9, __pyx_t_4, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_6, (PyObject*)__pyx_t_10))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);

      /* "pandas/internals.pyx":1342
     *         rvalues[mask] = na_rep
     *         imask = (-mask).ravel()
     *         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)             # <<<<<<<<<<<<<<
     *                                         for val in values.ravel()[imask]],
     *                                        dtype=object)
     */
      __pyx_t_10 = PyObject_Call(__pyx_t_5, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_rvalues, __pyx_n_s_flat); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      if (unlikely(PyObject_SetItem(__pyx_t_6, __pyx_v_imask, __pyx_t_10) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     1343:                                         for val in values.ravel()[imask]],

      /* "pandas/internals.pyx":1343
     *         imask = (-mask).ravel()
     *         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)
     *                                         for val in values.ravel()[imask]],             # <<<<<<<<<<<<<<
     *                                        dtype=object)
     *         return rvalues.tolist()
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ravel); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_GetItem(__pyx_t_1, __pyx_v_imask); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_1 = __pyx_t_4; __Pyx_INCREF(__pyx_t_1); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_7 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_8(__pyx_t_1);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1343; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_v_val, __pyx_t_4);
        __pyx_t_4 = 0;

     1344:                                        dtype=object)

      /* "pandas/internals.pyx":1344
     *         rvalues.flat[imask] = np.array([lib.repr_timedelta64(val)
     *                                         for val in values.ravel()[imask]],
     *                                        dtype=object)             # <<<<<<<<<<<<<<
     *         return rvalues.tolist()
     *
     */
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1345:         return rvalues.tolist()

      /* "pandas/internals.pyx":1345
     *                                         for val in values.ravel()[imask]],
     *                                        dtype=object)
     *         return rvalues.tolist()             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_rvalues, __pyx_n_s_tolist); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_6 = PyObject_Call(__pyx_t_10, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_r = __pyx_t_6;
      __pyx_t_6 = 0;
      goto __pyx_L0;

     1346:

     1347:

     1348: class BoolBlock(NumericBlock):

      /* "pandas/internals.pyx":1348
     *
     *
     * class BoolBlock(NumericBlock):             # <<<<<<<<<<<<<<
     *     is_bool = True
     *     _can_hold_na = False
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_NumericBlock); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1348; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1348; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1348; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_2, __pyx_n_s_BoolBlock, __pyx_n_s_BoolBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1348; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1348
     *
     *
     * class BoolBlock(NumericBlock):             # <<<<<<<<<<<<<<
     *     is_bool = True
     *     _can_hold_na = False
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_BoolBlock, __pyx_t_2, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1348; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_BoolBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1348; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1349:     is_bool = True

      /* "pandas/internals.pyx":1349
     *
     * class BoolBlock(NumericBlock):
     *     is_bool = True             # <<<<<<<<<<<<<<
     *     _can_hold_na = False
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_bool, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1349; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1350:     _can_hold_na = False

      /* "pandas/internals.pyx":1350
     * class BoolBlock(NumericBlock):
     *     is_bool = True
     *     _can_hold_na = False             # <<<<<<<<<<<<<<
     *
     *     def _can_hold_element(self, element):
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1350; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1351:

     1352:     def _can_hold_element(self, element):

    /* "pandas/internals.pyx":1352
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_9BoolBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_9BoolBlock_1_can_hold_element = {__Pyx_NAMESTR("_can_hold_element"), (PyCFunction)__pyx_pw_6pandas_9internals_9BoolBlock_1_can_hold_element, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_9BoolBlock_1_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1352; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_can_hold_element") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1352; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1352; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BoolBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_9BoolBlock__can_hold_element(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_9BoolBlock__can_hold_element(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element", 0);
      __Pyx_INCREF(__pyx_v_element);

      /* "pandas/internals.pyx":1352
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BoolBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_element);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1352
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_tuple__337 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__337)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__337);
      __Pyx_GIVEREF(__pyx_tuple__337);

      /* "pandas/internals.pyx":1352
     *     _can_hold_na = False
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_9BoolBlock_1_can_hold_element, 0, __pyx_n_s_BoolBlock__can_hold_element, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__338)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_element, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__338 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__337, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_element, 1352, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__338)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1353:         if is_list_like(element):

      /* "pandas/internals.pyx":1353
     *
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):             # <<<<<<<<<<<<<<
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, np.integer)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_element);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_element);
      __Pyx_GIVEREF(__pyx_v_element);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     1354:             element = np.array(element)

        /* "pandas/internals.pyx":1354
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):
     *             element = np.array(element)             # <<<<<<<<<<<<<<
     *             return issubclass(element.dtype.type, np.integer)
     *         return isinstance(element, (int, bool))
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_element);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_element);
        __Pyx_GIVEREF(__pyx_v_element);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_element, __pyx_t_1);
        __pyx_t_1 = 0;

     1355:             return issubclass(element.dtype.type, np.integer)

        /* "pandas/internals.pyx":1355
     *         if is_list_like(element):
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, np.integer)             # <<<<<<<<<<<<<<
     *         return isinstance(element, (int, bool))
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_element, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_integer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_4 = PyObject_IsSubclass(__pyx_t_3, __pyx_t_2); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }

     1356:         return isinstance(element, (int, bool))

      /* "pandas/internals.pyx":1356
     *             element = np.array(element)
     *             return issubclass(element.dtype.type, np.integer)
     *         return isinstance(element, (int, bool))             # <<<<<<<<<<<<<<
     *
     *     def _try_cast(self, element):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)((PyObject*)(&PyInt_Type))));
      __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      __Pyx_INCREF(((PyObject*)&PyBool_Type));
      PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject*)&PyBool_Type));
      __Pyx_GIVEREF(((PyObject*)&PyBool_Type));
      __pyx_t_4 = PyObject_IsInstance(__pyx_v_element, __pyx_t_2); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1356; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1357:

     1358:     def _try_cast(self, element):

    /* "pandas/internals.pyx":1358
     *         return isinstance(element, (int, bool))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return bool(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_9BoolBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_9BoolBlock_3_try_cast = {__Pyx_NAMESTR("_try_cast"), (PyCFunction)__pyx_pw_6pandas_9internals_9BoolBlock_3_try_cast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_9BoolBlock_3_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1358; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1358; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1358; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BoolBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_9BoolBlock_2_try_cast(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_9BoolBlock_2_try_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast", 0);

      /* "pandas/internals.pyx":1358
     *         return isinstance(element, (int, bool))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return bool(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BoolBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1358
     *         return isinstance(element, (int, bool))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return bool(element)
     */
      __pyx_tuple__339 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__339)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__339);
      __Pyx_GIVEREF(__pyx_tuple__339);

      /* "pandas/internals.pyx":1358
     *         return isinstance(element, (int, bool))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return bool(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_9BoolBlock_3_try_cast, 0, __pyx_n_s_BoolBlock__try_cast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__340)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__340 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__339, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast, 1358, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__340)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1359:         try:

      /* "pandas/internals.pyx":1359
     *
     *     def _try_cast(self, element):
     *         try:             # <<<<<<<<<<<<<<
     *             return bool(element)
     *         except:  # pragma: no cover
     */
      {
        /*try:*/ {

     1360:             return bool(element)

          /* "pandas/internals.pyx":1360
     *     def _try_cast(self, element):
     *         try:
     *             return bool(element)             # <<<<<<<<<<<<<<
     *         except:  # pragma: no cover
     *             return element
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_element); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1360; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __pyx_t_5 = __Pyx_PyBool_FromLong((!(!__pyx_t_4))); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1360; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_r = __pyx_t_5;
          __pyx_t_5 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

     1361:         except:  # pragma: no cover

        /* "pandas/internals.pyx":1361
     *         try:
     *             return bool(element)
     *         except:  # pragma: no cover             # <<<<<<<<<<<<<<
     *             return element
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.BoolBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_6, &__pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1361; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GOTREF(__pyx_t_7);

     1362:             return element

          /* "pandas/internals.pyx":1362
     *             return bool(element)
     *         except:  # pragma: no cover
     *             return element             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_element);
          __pyx_r = __pyx_v_element;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1363:

     1364:     def should_store(self, value):

    /* "pandas/internals.pyx":1364
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.bool_)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_9BoolBlock_5should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_9BoolBlock_5should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_9BoolBlock_5should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_9BoolBlock_5should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1364; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1364; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1364; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BoolBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_9BoolBlock_4should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_9BoolBlock_4should_store(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1364
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.bool_)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BoolBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1364
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.bool_)
     *
     */
      __pyx_tuple__341 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__341)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__341);
      __Pyx_GIVEREF(__pyx_tuple__341);

      /* "pandas/internals.pyx":1364
     *             return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.bool_)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_9BoolBlock_5should_store, 0, __pyx_n_s_BoolBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__342)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__342 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__341, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1364, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__342)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1365:         return issubclass(value.dtype.type, np.bool_)

      /* "pandas/internals.pyx":1365
     *
     *     def should_store(self, value):
     *         return issubclass(value.dtype.type, np.bool_)             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_bool); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1366:

     1367:

     1368: class ObjectBlock(Block):

      /* "pandas/internals.pyx":1368
     *
     *
     * class ObjectBlock(Block):             # <<<<<<<<<<<<<<
     *     is_object = True
     *     _can_hold_na = True
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_ObjectBlock, __pyx_n_s_ObjectBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1368
     *
     *
     * class ObjectBlock(Block):             # <<<<<<<<<<<<<<
     *     is_object = True
     *     _can_hold_na = True
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_ObjectBlock, __pyx_t_1, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_ObjectBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1369:     is_object = True

      /* "pandas/internals.pyx":1369
     *
     * class ObjectBlock(Block):
     *     is_object = True             # <<<<<<<<<<<<<<
     *     _can_hold_na = True
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_object, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1370:     _can_hold_na = True

      /* "pandas/internals.pyx":1370
     * class ObjectBlock(Block):
     *     is_object = True
     *     _can_hold_na = True             # <<<<<<<<<<<<<<
     *
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1370; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1371:

     1372:     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,

    /* "pandas/internals.pyx":1372
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *         if issubclass(values.dtype.type, compat.string_types):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_1__init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_1__init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_ndim = 0;
      PyObject *__pyx_v_fastpath = 0;
      PyObject *__pyx_v_placement = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_items,&__pyx_n_s_ref_items,&__pyx_n_s_ndim,&__pyx_n_s_fastpath,&__pyx_n_s_placement,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)__pyx_int_2));
        values[5] = ((PyObject *)((PyObject *)Py_False));

      /* "pandas/internals.pyx":1372
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *         if issubclass(values.dtype.type, compat.string_types):
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_items, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_ndim, PyObject *__pyx_v_fastpath, PyObject *__pyx_v_placement) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__", 0);
      __Pyx_INCREF(__pyx_v_values);

      /* "pandas/internals.pyx":1372
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *         if issubclass(values.dtype.type, compat.string_types):
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1372
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *         if issubclass(values.dtype.type, compat.string_types):
     */
      __pyx_tuple__343 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_ndim, __pyx_n_s_fastpath, __pyx_n_s_placement); if (unlikely(!__pyx_tuple__343)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__343);
      __Pyx_GIVEREF(__pyx_tuple__343);
      __pyx_codeobj__344 = (PyObject*)__Pyx_PyCode_New(7, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__343, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_init, 1372, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__344)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1372
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *         if issubclass(values.dtype.type, compat.string_types):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_1__init__, 0, __pyx_n_s_ObjectBlock___init, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__344)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__345);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_init, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__345 = PyTuple_Pack(3, ((PyObject *)__pyx_int_2), ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__345)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__345);
      __Pyx_GIVEREF(__pyx_tuple__345);

     1373:                  placement=None):

        /* "pandas/internals.pyx":1373
     *
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,
     *                  placement=None):             # <<<<<<<<<<<<<<
     *         if issubclass(values.dtype.type, compat.string_types):
     *             values = np.array(values, dtype=object)
     */
        values[6] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ndim);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_placement);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_items = values[2];
        __pyx_v_ref_items = values[3];
        __pyx_v_ndim = values[4];
        __pyx_v_fastpath = values[5];
        __pyx_v_placement = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1372; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock___init__(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_items, __pyx_v_ref_items, __pyx_v_ndim, __pyx_v_fastpath, __pyx_v_placement);

     1374:         if issubclass(values.dtype.type, compat.string_types):

      /* "pandas/internals.pyx":1374
     *     def __init__(self, values, items, ref_items, ndim=2, fastpath=False,
     *                  placement=None):
     *         if issubclass(values.dtype.type, compat.string_types):             # <<<<<<<<<<<<<<
     *             values = np.array(values, dtype=object)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1374; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1374; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_compat); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1374; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_string_types); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1374; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1374; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     1375:             values = np.array(values, dtype=object)

        /* "pandas/internals.pyx":1375
     *                  placement=None):
     *         if issubclass(values.dtype.type, compat.string_types):
     *             values = np.array(values, dtype=object)             # <<<<<<<<<<<<<<
     *
     *         super(ObjectBlock, self).__init__(values, items, ref_items, ndim=ndim,
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_6);
        __pyx_t_6 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1376:

     1377:         super(ObjectBlock, self).__init__(values, items, ref_items, ndim=ndim,

      /* "pandas/internals.pyx":1377
     *             values = np.array(values, dtype=object)
     *
     *         super(ObjectBlock, self).__init__(values, items, ref_items, ndim=ndim,             # <<<<<<<<<<<<<<
     *                                           fastpath=fastpath,
     *                                           placement=placement)
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_ObjectBlock); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_self);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_builtin_super, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_init); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_ndim, __pyx_v_ndim) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1377
     *             values = np.array(values, dtype=object)
     *
     *         super(ObjectBlock, self).__init__(values, items, ref_items, ndim=ndim,             # <<<<<<<<<<<<<<
     *                                           fastpath=fastpath,
     *                                           placement=placement)
     */
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1378:                                           fastpath=fastpath,

      /* "pandas/internals.pyx":1378
     *
     *         super(ObjectBlock, self).__init__(values, items, ref_items, ndim=ndim,
     *                                           fastpath=fastpath,             # <<<<<<<<<<<<<<
     *                                           placement=placement)
     *
     */
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fastpath, __pyx_v_fastpath) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1379:                                           placement=placement)

      /* "pandas/internals.pyx":1379
     *         super(ObjectBlock, self).__init__(values, items, ref_items, ndim=ndim,
     *                                           fastpath=fastpath,
     *                                           placement=placement)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1380:

     1381:     @property

      /* "pandas/internals.pyx":1381
     *                                           placement=placement)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def is_bool(self):
     *         """ we can be a bool if we have only bool values but are of type
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_bool, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1382:     def is_bool(self):

    /* "pandas/internals.pyx":1382
     *
     *     @property
     *     def is_bool(self):             # <<<<<<<<<<<<<<
     *         """ we can be a bool if we have only bool values but are of type
     *         object
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_3is_bool(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static char __pyx_doc_6pandas_9internals_11ObjectBlock_2is_bool[] = " we can be a bool if we have only bool values but are of type\n        object\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_3is_bool = {__Pyx_NAMESTR("is_bool"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_3is_bool, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11ObjectBlock_2is_bool)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_3is_bool(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_bool (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_2is_bool(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_2is_bool(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_bool", 0);

      /* "pandas/internals.pyx":1382
     *
     *     @property
     *     def is_bool(self):             # <<<<<<<<<<<<<<
     *         """ we can be a bool if we have only bool values but are of type
     *         object
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.is_bool", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1382
     *
     *     @property
     *     def is_bool(self):             # <<<<<<<<<<<<<<
     *         """ we can be a bool if we have only bool values but are of type
     *         object
     */
      __pyx_tuple__346 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__346)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__346);
      __Pyx_GIVEREF(__pyx_tuple__346);

      /* "pandas/internals.pyx":1382
     *
     *     @property
     *     def is_bool(self):             # <<<<<<<<<<<<<<
     *         """ we can be a bool if we have only bool values but are of type
     *         object
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_3is_bool, 0, __pyx_n_s_ObjectBlock_is_bool, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__347)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__347 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__346, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_bool, 1382, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__347)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1383:         """ we can be a bool if we have only bool values but are of type

     1384:         object

     1385:         """

     1386:         return lib.is_bool_array(self.values.ravel())

      /* "pandas/internals.pyx":1386
     *         object
     *         """
     *         return lib.is_bool_array(self.values.ravel())             # <<<<<<<<<<<<<<
     *
     *     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_lib); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_bool_array); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ravel); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1387:

     1388:     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,

    /* "pandas/internals.pyx":1388
     *         return lib.is_bool_array(self.values.ravel())
     *
     *     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,             # <<<<<<<<<<<<<<
     *                 copy=True, by_item=True):
     *         """ attempt to coerce any object types to better types
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_5convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11ObjectBlock_4convert[] = " attempt to coerce any object types to better types\n            return a copy of the block (if copy = True)\n            by definition we ARE an ObjectBlock!!!!!\n\n            can return multiple blocks!\n            ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_5convert = {__Pyx_NAMESTR("convert"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_5convert, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11ObjectBlock_4convert)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_5convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_convert_dates = 0;
      PyObject *__pyx_v_convert_numeric = 0;
      PyObject *__pyx_v_convert_timedeltas = 0;
      CYTHON_UNUSED PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_by_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_convert_dates,&__pyx_n_s_convert_numeric,&__pyx_n_s_convert_timedeltas,&__pyx_n_s_copy,&__pyx_n_s_by_item,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_True));
        values[2] = ((PyObject *)((PyObject *)Py_True));
        values[3] = ((PyObject *)((PyObject *)Py_True));

      /* "pandas/internals.pyx":1388
     *         return lib.is_bool_array(self.values.ravel())
     *
     *     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,             # <<<<<<<<<<<<<<
     *                 copy=True, by_item=True):
     *         """ attempt to coerce any object types to better types
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_4convert(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_convert_dates, PyObject *__pyx_v_convert_numeric, PyObject *__pyx_v_convert_timedeltas, CYTHON_UNUSED PyObject *__pyx_v_copy, PyObject *__pyx_v_by_item) {
      PyObject *__pyx_v_is_unique = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_v_i = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_c = NULL;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_placement = NULL;
      PyObject *__pyx_v_newb = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert", 0);

      /* "pandas/internals.pyx":1388
     *         return lib.is_bool_array(self.values.ravel())
     *
     *     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,             # <<<<<<<<<<<<<<
     *                 copy=True, by_item=True):
     *         """ attempt to coerce any object types to better types
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_is_unique);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_c);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_placement);
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1388
     *         return lib.is_bool_array(self.values.ravel())
     *
     *     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,             # <<<<<<<<<<<<<<
     *                 copy=True, by_item=True):
     *         """ attempt to coerce any object types to better types
     */
      __pyx_tuple__348 = PyTuple_Pack(14, __pyx_n_s_self, __pyx_n_s_convert_dates, __pyx_n_s_convert_numeric, __pyx_n_s_convert_timedeltas, __pyx_n_s_copy, __pyx_n_s_by_item, __pyx_n_s_is_unique, __pyx_n_s_blocks, __pyx_n_s_i, __pyx_n_s_c, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_placement, __pyx_n_s_newb); if (unlikely(!__pyx_tuple__348)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__348);
      __Pyx_GIVEREF(__pyx_tuple__348);
      __pyx_codeobj__349 = (PyObject*)__Pyx_PyCode_New(6, 0, 14, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__348, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_convert, 1388, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__349)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1388
     *         return lib.is_bool_array(self.values.ravel())
     *
     *     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,             # <<<<<<<<<<<<<<
     *                 copy=True, by_item=True):
     *         """ attempt to coerce any object types to better types
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_5convert, 0, __pyx_n_s_ObjectBlock_convert, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__349)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__350);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_convert, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__350 = PyTuple_Pack(5, ((PyObject *)Py_True), ((PyObject *)Py_True), ((PyObject *)Py_True), ((PyObject *)Py_True), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__350)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__350);
      __Pyx_GIVEREF(__pyx_tuple__350);

     1389:                 copy=True, by_item=True):

        /* "pandas/internals.pyx":1389
     *
     *     def convert(self, convert_dates=True, convert_numeric=True, convert_timedeltas=True,
     *                 copy=True, by_item=True):             # <<<<<<<<<<<<<<
     *         """ attempt to coerce any object types to better types
     *             return a copy of the block (if copy = True)
     */
        values[4] = ((PyObject *)((PyObject *)Py_True));
        values[5] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_convert_dates);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_convert_numeric);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_convert_timedeltas);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_by_item);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "convert") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_convert_dates = values[1];
        __pyx_v_convert_numeric = values[2];
        __pyx_v_convert_timedeltas = values[3];
        __pyx_v_copy = values[4];
        __pyx_v_by_item = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("convert", 0, 1, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1388; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_4convert(__pyx_self, __pyx_v_self, __pyx_v_convert_dates, __pyx_v_convert_numeric, __pyx_v_convert_timedeltas, __pyx_v_copy, __pyx_v_by_item);

     1390:         """ attempt to coerce any object types to better types

     1391:             return a copy of the block (if copy = True)

     1392:             by definition we ARE an ObjectBlock!!!!!

     1393:

     1394:             can return multiple blocks!

     1395:             """

     1396:

     1397:         # attempt to create new type blocks

     1398:         is_unique = self.items.is_unique

      /* "pandas/internals.pyx":1398
     *
     *         # attempt to create new type blocks
     *         is_unique = self.items.is_unique             # <<<<<<<<<<<<<<
     *         blocks = []
     *         if by_item and not self._is_single_block:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_is_unique = __pyx_t_2;
      __pyx_t_2 = 0;

     1399:         blocks = []

      /* "pandas/internals.pyx":1399
     *         # attempt to create new type blocks
     *         is_unique = self.items.is_unique
     *         blocks = []             # <<<<<<<<<<<<<<
     *         if by_item and not self._is_single_block:
     *
     */
      __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_blocks = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     1400:         if by_item and not self._is_single_block:

      /* "pandas/internals.pyx":1400
     *         is_unique = self.items.is_unique
     *         blocks = []
     *         if by_item and not self._is_single_block:             # <<<<<<<<<<<<<<
     *
     *             for i, c in enumerate(self.items):
     */
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_by_item); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1400; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_3) {
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_single_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1400; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1400; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_5 = (!__pyx_t_4);
        __pyx_t_4 = __pyx_t_5;
      } else {
        __pyx_t_4 = __pyx_t_3;
      }
      if (__pyx_t_4) {

     1401:

     1402:             for i, c in enumerate(self.items):

        /* "pandas/internals.pyx":1402
     *         if by_item and not self._is_single_block:
     *
     *             for i, c in enumerate(self.items):             # <<<<<<<<<<<<<<
     *                 values = self.iget(i)
     *
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_2 = __pyx_int_0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
          __pyx_t_6 = __pyx_t_1; __Pyx_INCREF(__pyx_t_6); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_8 = Py_TYPE(__pyx_t_6)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_6)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_6)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_1); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_6, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_6)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_6)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_1); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_6, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_8(__pyx_t_6);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XDECREF_SET(__pyx_v_c, __pyx_t_1);
          __pyx_t_1 = 0;
          __Pyx_INCREF(__pyx_t_2);
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_2);
          __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1402; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2);
          __pyx_t_2 = __pyx_t_1;
          __pyx_t_1 = 0;

     1403:                 values = self.iget(i)

          /* "pandas/internals.pyx":1403
     *
     *             for i, c in enumerate(self.items):
     *                 values = self.iget(i)             # <<<<<<<<<<<<<<
     *
     *                 values = com._possibly_convert_objects(
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_iget); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __pyx_t_10 = PyObject_Call(__pyx_t_1, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_XDECREF_SET(__pyx_v_values, __pyx_t_10);
          __pyx_t_10 = 0;

     1404:

     1405:                 values = com._possibly_convert_objects(

          /* "pandas/internals.pyx":1405
     *                 values = self.iget(i)
     *
     *                 values = com._possibly_convert_objects(             # <<<<<<<<<<<<<<
     *                     values.ravel(), convert_dates=convert_dates,
     *                     convert_numeric=convert_numeric,
     */
          __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_possibly_convert_objects); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

          /* "pandas/internals.pyx":1405
     *                 values = self.iget(i)
     *
     *                 values = com._possibly_convert_objects(             # <<<<<<<<<<<<<<
     *                     values.ravel(), convert_dates=convert_dates,
     *                     convert_numeric=convert_numeric,
     */
          __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

          /* "pandas/internals.pyx":1405
     *                 values = self.iget(i)
     *
     *                 values = com._possibly_convert_objects(             # <<<<<<<<<<<<<<
     *                     values.ravel(), convert_dates=convert_dates,
     *                     convert_numeric=convert_numeric,
     */
          __pyx_t_11 = PyObject_Call(__pyx_t_9, __pyx_t_10, __pyx_t_1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1406:                     values.ravel(), convert_dates=convert_dates,

          /* "pandas/internals.pyx":1406
     *
     *                 values = com._possibly_convert_objects(
     *                     values.ravel(), convert_dates=convert_dates,             # <<<<<<<<<<<<<<
     *                     convert_numeric=convert_numeric,
     *                     convert_timedeltas=convert_timedeltas,
     */
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ravel); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1406; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_1 = PyObject_Call(__pyx_t_10, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1406; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

          /* "pandas/internals.pyx":1406
     *
     *                 values = com._possibly_convert_objects(
     *                     values.ravel(), convert_dates=convert_dates,             # <<<<<<<<<<<<<<
     *                     convert_numeric=convert_numeric,
     *                     convert_timedeltas=convert_timedeltas,
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_convert_dates, __pyx_v_convert_dates) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1407:                     convert_numeric=convert_numeric,

          /* "pandas/internals.pyx":1407
     *                 values = com._possibly_convert_objects(
     *                     values.ravel(), convert_dates=convert_dates,
     *                     convert_numeric=convert_numeric,             # <<<<<<<<<<<<<<
     *                     convert_timedeltas=convert_timedeltas,
     *                 ).reshape(values.shape)
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_convert_numeric, __pyx_v_convert_numeric) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1408:                     convert_timedeltas=convert_timedeltas,

          /* "pandas/internals.pyx":1408
     *                     values.ravel(), convert_dates=convert_dates,
     *                     convert_numeric=convert_numeric,
     *                     convert_timedeltas=convert_timedeltas,             # <<<<<<<<<<<<<<
     *                 ).reshape(values.shape)
     *                 values = _block_shape(values, ndim=self.ndim)
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_convert_timedeltas, __pyx_v_convert_timedeltas) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1409:                 ).reshape(values.shape)

          /* "pandas/internals.pyx":1409
     *                     convert_numeric=convert_numeric,
     *                     convert_timedeltas=convert_timedeltas,
     *                 ).reshape(values.shape)             # <<<<<<<<<<<<<<
     *                 values = _block_shape(values, ndim=self.ndim)
     *                 items = self.items.take([i])
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_reshape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1409; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1409; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1409; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_11);
          __Pyx_GIVEREF(__pyx_t_11);
          __pyx_t_11 = 0;
          __pyx_t_11 = PyObject_Call(__pyx_t_1, __pyx_t_10, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1409; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_11);
          __pyx_t_11 = 0;

     1410:                 values = _block_shape(values, ndim=self.ndim)

          /* "pandas/internals.pyx":1410
     *                     convert_timedeltas=convert_timedeltas,
     *                 ).reshape(values.shape)
     *                 values = _block_shape(values, ndim=self.ndim)             # <<<<<<<<<<<<<<
     *                 items = self.items.take([i])
     *                 placement = None if is_unique else [i]
     */
          __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_INCREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_values);
          __Pyx_GIVEREF(__pyx_v_values);
          __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_ndim, __pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_9 = PyObject_Call(__pyx_t_11, __pyx_t_10, __pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_9);
          __pyx_t_9 = 0;

     1411:                 items = self.items.take([i])

          /* "pandas/internals.pyx":1411
     *                 ).reshape(values.shape)
     *                 values = _block_shape(values, ndim=self.ndim)
     *                 items = self.items.take([i])             # <<<<<<<<<<<<<<
     *                 placement = None if is_unique else [i]
     *                 newb = make_block(values, items, self.ref_items,
     */
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_take); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_9 = PyList_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_INCREF(__pyx_v_i);
          PyList_SET_ITEM(__pyx_t_9, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_9 = PyObject_Call(__pyx_t_1, __pyx_t_10, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF_SET(__pyx_v_items, __pyx_t_9);
          __pyx_t_9 = 0;

     1412:                 placement = None if is_unique else [i]

          /* "pandas/internals.pyx":1412
     *                 values = _block_shape(values, ndim=self.ndim)
     *                 items = self.items.take([i])
     *                 placement = None if is_unique else [i]             # <<<<<<<<<<<<<<
     *                 newb = make_block(values, items, self.ref_items,
     *                                   ndim=self.ndim, placement=placement)
     */
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1412; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (__pyx_t_4) {
            __Pyx_INCREF(Py_None);
            __pyx_t_9 = Py_None;
          } else {
            __pyx_t_10 = PyList_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1412; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_INCREF(__pyx_v_i);
            PyList_SET_ITEM(__pyx_t_10, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            __pyx_t_9 = __pyx_t_10;
            __pyx_t_10 = 0;
          }
          __Pyx_XDECREF_SET(__pyx_v_placement, __pyx_t_9);
          __pyx_t_9 = 0;

     1413:                 newb = make_block(values, items, self.ref_items,

          /* "pandas/internals.pyx":1413
     *                 items = self.items.take([i])
     *                 placement = None if is_unique else [i]
     *                 newb = make_block(values, items, self.ref_items,             # <<<<<<<<<<<<<<
     *                                   ndim=self.ndim, placement=placement)
     *                 blocks.append(newb)
     */
          __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_values);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
          __Pyx_GIVEREF(__pyx_v_values);
          __Pyx_INCREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_items);
          __Pyx_GIVEREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __pyx_t_10 = 0;
          __pyx_t_10 = PyDict_New(); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);

          /* "pandas/internals.pyx":1413
     *                 items = self.items.take([i])
     *                 placement = None if is_unique else [i]
     *                 newb = make_block(values, items, self.ref_items,             # <<<<<<<<<<<<<<
     *                                   ndim=self.ndim, placement=placement)
     *                 blocks.append(newb)
     */
          __pyx_t_11 = PyObject_Call(__pyx_t_9, __pyx_t_1, __pyx_t_10); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF_SET(__pyx_v_newb, __pyx_t_11);
          __pyx_t_11 = 0;

     1414:                                   ndim=self.ndim, placement=placement)

          /* "pandas/internals.pyx":1414
     *                 placement = None if is_unique else [i]
     *                 newb = make_block(values, items, self.ref_items,
     *                                   ndim=self.ndim, placement=placement)             # <<<<<<<<<<<<<<
     *                 blocks.append(newb)
     *
     */
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_ndim, __pyx_t_11) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1415:                 blocks.append(newb)

          /* "pandas/internals.pyx":1415
     *                 newb = make_block(values, items, self.ref_items,
     *                                   ndim=self.ndim, placement=placement)
     *                 blocks.append(newb)             # <<<<<<<<<<<<<<
     *
     *         else:
     */
          __pyx_t_12 = __Pyx_PyList_Append(__pyx_v_blocks, __pyx_v_newb); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     1416:

     1417:         else:

     1418:

     1419:             values = com._possibly_convert_objects(

        /* "pandas/internals.pyx":1419
     *         else:
     *
     *             values = com._possibly_convert_objects(             # <<<<<<<<<<<<<<
     *                 self.values.ravel(), convert_dates=convert_dates,
     *                 convert_numeric=convert_numeric
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_possibly_convert_objects); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

        /* "pandas/internals.pyx":1419
     *         else:
     *
     *             values = com._possibly_convert_objects(             # <<<<<<<<<<<<<<
     *                 self.values.ravel(), convert_dates=convert_dates,
     *                 convert_numeric=convert_numeric
     */
        __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

        /* "pandas/internals.pyx":1419
     *         else:
     *
     *             values = com._possibly_convert_objects(             # <<<<<<<<<<<<<<
     *                 self.values.ravel(), convert_dates=convert_dates,
     *                 convert_numeric=convert_numeric
     */
        __pyx_t_10 = PyObject_Call(__pyx_t_6, __pyx_t_11, __pyx_t_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1420:                 self.values.ravel(), convert_dates=convert_dates,

        /* "pandas/internals.pyx":1420
     *
     *             values = com._possibly_convert_objects(
     *                 self.values.ravel(), convert_dates=convert_dates,             # <<<<<<<<<<<<<<
     *                 convert_numeric=convert_numeric
     *             ).reshape(self.values.shape)
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_ravel); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_t_11, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;

        /* "pandas/internals.pyx":1420
     *
     *             values = com._possibly_convert_objects(
     *                 self.values.ravel(), convert_dates=convert_dates,             # <<<<<<<<<<<<<<
     *                 convert_numeric=convert_numeric
     *             ).reshape(self.values.shape)
     */
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_convert_dates, __pyx_v_convert_dates) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1421:                 convert_numeric=convert_numeric

     1422:             ).reshape(self.values.shape)

        /* "pandas/internals.pyx":1422
     *                 self.values.ravel(), convert_dates=convert_dates,
     *                 convert_numeric=convert_numeric
     *             ).reshape(self.values.shape)             # <<<<<<<<<<<<<<
     *             blocks.append(make_block(values, self.items, self.ref_items,
     *                                      ndim=self.ndim))
     */
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_convert_numeric, __pyx_v_convert_numeric) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":1422
     *                 self.values.ravel(), convert_dates=convert_dates,
     *                 convert_numeric=convert_numeric
     *             ).reshape(self.values.shape)             # <<<<<<<<<<<<<<
     *             blocks.append(make_block(values, self.items, self.ref_items,
     *                                      ndim=self.ndim))
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_reshape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_shape); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_11);
        __Pyx_GIVEREF(__pyx_t_11);
        __pyx_t_11 = 0;
        __pyx_t_11 = PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_v_values = __pyx_t_11;
        __pyx_t_11 = 0;

     1423:             blocks.append(make_block(values, self.items, self.ref_items,

        /* "pandas/internals.pyx":1423
     *                 convert_numeric=convert_numeric
     *             ).reshape(self.values.shape)
     *             blocks.append(make_block(values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                                      ndim=self.ndim))
     *
     */
        __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_10 = 0;
        __pyx_t_2 = 0;
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

        /* "pandas/internals.pyx":1423
     *                 convert_numeric=convert_numeric
     *             ).reshape(self.values.shape)
     *             blocks.append(make_block(values, self.items, self.ref_items,             # <<<<<<<<<<<<<<
     *                                      ndim=self.ndim))
     *
     */
        __pyx_t_10 = PyObject_Call(__pyx_t_11, __pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_12 = __Pyx_PyList_Append(__pyx_v_blocks, __pyx_t_10); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
      __pyx_L3:;

     1424:                                      ndim=self.ndim))

        /* "pandas/internals.pyx":1424
     *             ).reshape(self.values.shape)
     *             blocks.append(make_block(values, self.items, self.ref_items,
     *                                      ndim=self.ndim))             # <<<<<<<<<<<<<<
     *
     *         return blocks
     */
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1424; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_ndim, __pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     1425:

     1426:         return blocks

      /* "pandas/internals.pyx":1426
     *                                      ndim=self.ndim))
     *
     *         return blocks             # <<<<<<<<<<<<<<
     *
     *     def set(self, item, value, check=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_blocks);
      __pyx_r = __pyx_v_blocks;
      goto __pyx_L0;

     1427:

     1428:     def set(self, item, value, check=False):

    /* "pandas/internals.pyx":1428
     *         return blocks
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_7set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11ObjectBlock_6set[] = "\n        Modify Block in-place with new item value\n\n        Returns\n        -------\n        None\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_7set = {__Pyx_NAMESTR("set"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_7set, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11ObjectBlock_6set)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_7set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_check = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,&__pyx_n_s_value,&__pyx_n_s_check,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
        __pyx_v_value = values[2];
        __pyx_v_check = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_6set(__pyx_self, __pyx_v_self, __pyx_v_item, __pyx_v_value, __pyx_v_check);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_6set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value, PyObject *__pyx_v_check) {
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_v_new_shape = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set", 0);

      /* "pandas/internals.pyx":1428
     *         return blocks
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_new_shape);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1428
     *         return blocks
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */
      __pyx_tuple__351 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_value, __pyx_n_s_check, __pyx_n_s_loc, __pyx_n_s_new_shape); if (unlikely(!__pyx_tuple__351)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__351);
      __Pyx_GIVEREF(__pyx_tuple__351);
      __pyx_codeobj__352 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__351, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set, 1428, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__352)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1428
     *         return blocks
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_7set, 0, __pyx_n_s_ObjectBlock_set, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__352)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__353);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__353 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__353)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__353);
      __Pyx_GIVEREF(__pyx_tuple__353);

     1429:         """

     1430:         Modify Block in-place with new item value

     1431:

     1432:         Returns

     1433:         -------

     1434:         None

     1435:         """

     1436:

     1437:         loc = self.items.get_loc(item)

      /* "pandas/internals.pyx":1437
     *         """
     *
     *         loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *
     *         # GH6026
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_loc = __pyx_t_3;
      __pyx_t_3 = 0;

     1438:

     1439:         # GH6026

     1440:         if check:

      /* "pandas/internals.pyx":1440
     *
     *         # GH6026
     *         if check:             # <<<<<<<<<<<<<<
     *             try:
     *                 if (self.values[loc] == value).all():
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_check); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {

     1441:             try:

        /* "pandas/internals.pyx":1441
     *         # GH6026
     *         if check:
     *             try:             # <<<<<<<<<<<<<<
     *                 if (self.values[loc] == value).all():
     *                     return
     */
        {
          /*try:*/ {

     1442:                 if (self.values[loc] == value).all():

            /* "pandas/internals.pyx":1442
     *         if check:
     *             try:
     *                 if (self.values[loc] == value).all():             # <<<<<<<<<<<<<<
     *                     return
     *             except:
     */
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1442; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_1 = PyObject_GetItem(__pyx_t_3, __pyx_v_loc); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1442; __pyx_clineno = __LINE__; goto __pyx_L4_error;};
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_v_value, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1442; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_all); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1442; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1442; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1442; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            if (__pyx_t_4) {

     1443:                     return

              /* "pandas/internals.pyx":1443
     *             try:
     *                 if (self.values[loc] == value).all():
     *                     return             # <<<<<<<<<<<<<<
     *             except:
     *                 pass
     */
              __Pyx_XDECREF(__pyx_r);
              __pyx_r = Py_None; __Pyx_INCREF(Py_None);
              goto __pyx_L8_try_return;
            }
          }
          __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L11_try_end;
          __pyx_L4_error:;
          __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;

     1444:             except:

          /* "pandas/internals.pyx":1444
     *                 if (self.values[loc] == value).all():
     *                     return
     *             except:             # <<<<<<<<<<<<<<
     *                 pass
     *         try:
     */
          /*except:*/ {
            PyErr_Restore(0,0,0);
            goto __pyx_L5_exception_handled;
          }
          __pyx_L8_try_return:;
          __Pyx_XGIVEREF(__pyx_t_5);
          __Pyx_XGIVEREF(__pyx_t_6);
          __Pyx_XGIVEREF(__pyx_t_7);
          __Pyx_ExceptionReset(__pyx_t_5, __pyx_t_6, __pyx_t_7);
          goto __pyx_L0;
          __pyx_L5_exception_handled:;
          __Pyx_XGIVEREF(__pyx_t_5);
          __Pyx_XGIVEREF(__pyx_t_6);
          __Pyx_XGIVEREF(__pyx_t_7);
          __Pyx_ExceptionReset(__pyx_t_5, __pyx_t_6, __pyx_t_7);
          __pyx_L11_try_end:;
        }
        goto __pyx_L3;
      }
      __pyx_L3:;

     1445:                 pass

     1446:         try:

      /* "pandas/internals.pyx":1446
     *             except:
     *                 pass
     *         try:             # <<<<<<<<<<<<<<
     *             self.values[loc] = value
     *         except (ValueError):
     */
      {
        /*try:*/ {

     1447:             self.values[loc] = value

          /* "pandas/internals.pyx":1447
     *                 pass
     *         try:
     *             self.values[loc] = value             # <<<<<<<<<<<<<<
     *         except (ValueError):
     *
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1447; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (unlikely(PyObject_SetItem(__pyx_t_3, __pyx_v_loc, __pyx_v_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1447; __pyx_clineno = __LINE__; goto __pyx_L13_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L20_try_end;
        __pyx_L13_error:;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;

     1448:         except (ValueError):

        /* "pandas/internals.pyx":1448
     *         try:
     *             self.values[loc] = value
     *         except (ValueError):             # <<<<<<<<<<<<<<
     *
     *             # broadcasting error
     */
        __pyx_t_8 = PyErr_ExceptionMatches(__pyx_builtin_ValueError);
        if (__pyx_t_8) {
          __Pyx_AddTraceback("pandas.internals.ObjectBlock.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_1, &__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1448; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_GOTREF(__pyx_t_2);

     1449:

     1450:             # broadcasting error

     1451:             # see GH6171

     1452:             new_shape = list(value.shape)

          /* "pandas/internals.pyx":1452
     *             # broadcasting error
     *             # see GH6171
     *             new_shape = list(value.shape)             # <<<<<<<<<<<<<<
     *             new_shape[0] = len(self.items)
     *             self.values = np.empty(tuple(new_shape),dtype=self.dtype)
     */
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_shape); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1452; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1452; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_10, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1452; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_v_new_shape = ((PyObject*)__pyx_t_9);
          __pyx_t_9 = 0;

     1453:             new_shape[0] = len(self.items)

          /* "pandas/internals.pyx":1453
     *             # see GH6171
     *             new_shape = list(value.shape)
     *             new_shape[0] = len(self.items)             # <<<<<<<<<<<<<<
     *             self.values = np.empty(tuple(new_shape),dtype=self.dtype)
     *             self.values.fill(np.nan)
     */
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1453; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_11 = PyObject_Length(__pyx_t_9); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1453; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_9 = PyInt_FromSsize_t(__pyx_t_11); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1453; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          if (unlikely(__Pyx_SetItemInt(__pyx_v_new_shape, 0, __pyx_t_9, long, 1, __Pyx_PyInt_From_long, 1, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1453; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

     1454:             self.values = np.empty(tuple(new_shape),dtype=self.dtype)

          /* "pandas/internals.pyx":1454
     *             new_shape = list(value.shape)
     *             new_shape[0] = len(self.items)
     *             self.values = np.empty(tuple(new_shape),dtype=self.dtype)             # <<<<<<<<<<<<<<
     *             self.values.fill(np.nan)
     *             self.values[loc] = value
     */
          __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_empty); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_9 = PyList_AsTuple(__pyx_v_new_shape); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_13);
          if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_dtype, __pyx_t_13) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __pyx_t_13 = PyObject_Call(__pyx_t_10, __pyx_t_12, __pyx_t_9); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values, __pyx_t_13) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1454; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;

     1455:             self.values.fill(np.nan)

          /* "pandas/internals.pyx":1455
     *             new_shape[0] = len(self.items)
     *             self.values = np.empty(tuple(new_shape),dtype=self.dtype)
     *             self.values.fill(np.nan)             # <<<<<<<<<<<<<<
     *             self.values[loc] = value
     *
     */
          __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1455; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_fill); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1455; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __pyx_t_13 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1455; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_13, __pyx_n_s_nan); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1455; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __pyx_t_13 = PyTuple_New(1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1455; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_13);
          PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_12);
          __Pyx_GIVEREF(__pyx_t_12);
          __pyx_t_12 = 0;
          __pyx_t_12 = PyObject_Call(__pyx_t_9, __pyx_t_13, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1455; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;

     1456:             self.values[loc] = value

          /* "pandas/internals.pyx":1456
     *             self.values = np.empty(tuple(new_shape),dtype=self.dtype)
     *             self.values.fill(np.nan)
     *             self.values[loc] = value             # <<<<<<<<<<<<<<
     *
     *
     */
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1456; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          if (unlikely(PyObject_SetItem(__pyx_t_12, __pyx_v_loc, __pyx_v_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1456; __pyx_clineno = __LINE__; goto __pyx_L15_except_error;}
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L14_exception_handled;
        }
        goto __pyx_L15_except_error;
        __pyx_L15_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_XGIVEREF(__pyx_t_5);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_6, __pyx_t_5);
        goto __pyx_L1_error;
        __pyx_L14_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_XGIVEREF(__pyx_t_5);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_6, __pyx_t_5);
        __pyx_L20_try_end:;
      }

     1457:

     1458:

     1459:     def _maybe_downcast(self, blocks, downcast=None):

    /* "pandas/internals.pyx":1459
     *
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         if downcast is not None:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_9_maybe_downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_9_maybe_downcast = {__Pyx_NAMESTR("_maybe_downcast"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_9_maybe_downcast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_9_maybe_downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_maybe_downcast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_blocks,&__pyx_n_s_downcast,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_maybe_downcast", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_maybe_downcast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_blocks = values[1];
        __pyx_v_downcast = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_maybe_downcast", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._maybe_downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_8_maybe_downcast(__pyx_self, __pyx_v_self, __pyx_v_blocks, __pyx_v_downcast);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_8_maybe_downcast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_blocks, PyObject *__pyx_v_downcast) {
      PyObject *__pyx_v_result_blocks = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_maybe_downcast", 0);

      /* "pandas/internals.pyx":1459
     *
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         if downcast is not None:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._maybe_downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result_blocks);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1459
     *
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         if downcast is not None:
     */
      __pyx_tuple__354 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_blocks, __pyx_n_s_downcast, __pyx_n_s_result_blocks, __pyx_n_s_blk); if (unlikely(!__pyx_tuple__354)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__354);
      __Pyx_GIVEREF(__pyx_tuple__354);
      __pyx_codeobj__355 = (PyObject*)__Pyx_PyCode_New(3, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__354, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_maybe_downcast, 1459, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__355)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1459
     *
     *
     *     def _maybe_downcast(self, blocks, downcast=None):             # <<<<<<<<<<<<<<
     *
     *         if downcast is not None:
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_9_maybe_downcast, 0, __pyx_n_s_ObjectBlock__maybe_downcast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__355)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__356);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_maybe_downcast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__356 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__356)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1459; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__356);
      __Pyx_GIVEREF(__pyx_tuple__356);

     1460:

     1461:         if downcast is not None:

      /* "pandas/internals.pyx":1461
     *     def _maybe_downcast(self, blocks, downcast=None):
     *
     *         if downcast is not None:             # <<<<<<<<<<<<<<
     *             return blocks
     *
     */
      __pyx_t_1 = (__pyx_v_downcast != Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1462:             return blocks

        /* "pandas/internals.pyx":1462
     *
     *         if downcast is not None:
     *             return blocks             # <<<<<<<<<<<<<<
     *
     *         # split and convert the blocks
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_blocks);
        __pyx_r = __pyx_v_blocks;
        goto __pyx_L0;
      }

     1463:

     1464:         # split and convert the blocks

     1465:         result_blocks = []

      /* "pandas/internals.pyx":1465
     *
     *         # split and convert the blocks
     *         result_blocks = []             # <<<<<<<<<<<<<<
     *         for blk in blocks:
     *             result_blocks.extend(blk.convert(convert_dates=True,
     */
      __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_v_result_blocks = ((PyObject*)__pyx_t_3);
      __pyx_t_3 = 0;

     1466:         for blk in blocks:

      /* "pandas/internals.pyx":1466
     *         # split and convert the blocks
     *         result_blocks = []
     *         for blk in blocks:             # <<<<<<<<<<<<<<
     *             result_blocks.extend(blk.convert(convert_dates=True,
     *                                              convert_numeric=False))
     */
      if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
        __pyx_t_3 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_6 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_6)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_6);
        }
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_6);
        __pyx_t_6 = 0;

     1467:             result_blocks.extend(blk.convert(convert_dates=True,

        /* "pandas/internals.pyx":1467
     *         result_blocks = []
     *         for blk in blocks:
     *             result_blocks.extend(blk.convert(convert_dates=True,             # <<<<<<<<<<<<<<
     *                                              convert_numeric=False))
     *         return result_blocks
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_convert); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1467; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1467; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_convert_dates, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1467; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":1467
     *         result_blocks = []
     *         for blk in blocks:
     *             result_blocks.extend(blk.convert(convert_dates=True,             # <<<<<<<<<<<<<<
     *                                              convert_numeric=False))
     *         return result_blocks
     */
        __pyx_t_8 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_7); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1467; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_9 = __Pyx_PyList_Extend(__pyx_v_result_blocks, __pyx_t_8); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1467; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     1468:                                              convert_numeric=False))

        /* "pandas/internals.pyx":1468
     *         for blk in blocks:
     *             result_blocks.extend(blk.convert(convert_dates=True,
     *                                              convert_numeric=False))             # <<<<<<<<<<<<<<
     *         return result_blocks
     *
     */
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_convert_numeric, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1467; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1469:         return result_blocks

      /* "pandas/internals.pyx":1469
     *             result_blocks.extend(blk.convert(convert_dates=True,
     *                                              convert_numeric=False))
     *         return result_blocks             # <<<<<<<<<<<<<<
     *
     *     def _can_hold_element(self, element):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result_blocks);
      __pyx_r = __pyx_v_result_blocks;
      goto __pyx_L0;

     1470:

     1471:     def _can_hold_element(self, element):

    /* "pandas/internals.pyx":1471
     *         return result_blocks
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return True
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_11_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_11_can_hold_element = {__Pyx_NAMESTR("_can_hold_element"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_11_can_hold_element, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_11_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1471; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_can_hold_element") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1471; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1471; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_10_can_hold_element(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_10_can_hold_element(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element", 0);

      /* "pandas/internals.pyx":1471
     *         return result_blocks
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return True
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1471
     *         return result_blocks
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return True
     *
     */
      __pyx_tuple__357 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__357)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1471; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__357);
      __Pyx_GIVEREF(__pyx_tuple__357);

      /* "pandas/internals.pyx":1471
     *         return result_blocks
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         return True
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_11_can_hold_element, 0, __pyx_n_s_ObjectBlock__can_hold_element, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__358)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1471; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_element, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1471; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__358 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__357, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_element, 1471, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__358)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1471; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1472:         return True

      /* "pandas/internals.pyx":1472
     *
     *     def _can_hold_element(self, element):
     *         return True             # <<<<<<<<<<<<<<
     *
     *     def _try_cast(self, element):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_True);
      __pyx_r = Py_True;
      goto __pyx_L0;

     1473:

     1474:     def _try_cast(self, element):

    /* "pandas/internals.pyx":1474
     *         return True
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         return element
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_13_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_13_try_cast = {__Pyx_NAMESTR("_try_cast"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_13_try_cast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_13_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1474; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1474; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1474; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_12_try_cast(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_12_try_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast", 0);

      /* "pandas/internals.pyx":1474
     *         return True
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         return element
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1474
     *         return True
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         return element
     *
     */
      __pyx_tuple__359 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__359)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__359);
      __Pyx_GIVEREF(__pyx_tuple__359);

      /* "pandas/internals.pyx":1474
     *         return True
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         return element
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_13_try_cast, 0, __pyx_n_s_ObjectBlock__try_cast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__360)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__360 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__359, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast, 1474, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__360)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1475:         return element

      /* "pandas/internals.pyx":1475
     *
     *     def _try_cast(self, element):
     *         return element             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_element);
      __pyx_r = __pyx_v_element;
      goto __pyx_L0;

     1476:

     1477:     def should_store(self, value):

    /* "pandas/internals.pyx":1477
     *         return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return not issubclass(value.dtype.type,
     *                               (np.integer, np.floating, np.complexfloating,
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_15should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_15should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_15should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_15should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_14should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_14should_store(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1477
     *         return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return not issubclass(value.dtype.type,
     *                               (np.integer, np.floating, np.complexfloating,
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1477
     *         return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return not issubclass(value.dtype.type,
     *                               (np.integer, np.floating, np.complexfloating,
     */
      __pyx_tuple__361 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__361)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__361);
      __Pyx_GIVEREF(__pyx_tuple__361);

      /* "pandas/internals.pyx":1477
     *         return element
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return not issubclass(value.dtype.type,
     *                               (np.integer, np.floating, np.complexfloating,
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_15should_store, 0, __pyx_n_s_ObjectBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__362)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__362 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__361, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1477, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__362)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1477; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1478:         return not issubclass(value.dtype.type,

      /* "pandas/internals.pyx":1478
     *
     *     def should_store(self, value):
     *         return not issubclass(value.dtype.type,             # <<<<<<<<<<<<<<
     *                               (np.integer, np.floating, np.complexfloating,
     *                                np.datetime64, np.bool_))
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1478; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1478; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "pandas/internals.pyx":1478
     *
     *     def should_store(self, value):
     *         return not issubclass(value.dtype.type,             # <<<<<<<<<<<<<<
     *                               (np.integer, np.floating, np.complexfloating,
     *                                np.datetime64, np.bool_))
     */
      __pyx_t_8 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_1); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1478; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyBool_FromLong((!(__pyx_t_8 != 0))); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1478; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1479:                               (np.integer, np.floating, np.complexfloating,

      /* "pandas/internals.pyx":1479
     *     def should_store(self, value):
     *         return not issubclass(value.dtype.type,
     *                               (np.integer, np.floating, np.complexfloating,             # <<<<<<<<<<<<<<
     *                                np.datetime64, np.bool_))
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_integer); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_floating); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_complexfloating); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "pandas/internals.pyx":1479
     *     def should_store(self, value):
     *         return not issubclass(value.dtype.type,
     *                               (np.integer, np.floating, np.complexfloating,             # <<<<<<<<<<<<<<
     *                                np.datetime64, np.bool_))
     *
     */
      __pyx_t_1 = PyTuple_New(5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_t_7);
      __Pyx_GIVEREF(__pyx_t_7);
      __pyx_t_3 = 0;
      __pyx_t_4 = 0;
      __pyx_t_5 = 0;
      __pyx_t_6 = 0;
      __pyx_t_7 = 0;

     1480:                                np.datetime64, np.bool_))

      /* "pandas/internals.pyx":1480
     *         return not issubclass(value.dtype.type,
     *                               (np.integer, np.floating, np.complexfloating,
     *                                np.datetime64, np.bool_))             # <<<<<<<<<<<<<<
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_datetime64); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_bool); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1481:

     1482:     def replace(self, to_replace, value, inplace=False, filter=None,

    /* "pandas/internals.pyx":1482
     *                                np.datetime64, np.bool_))
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         blk = [self]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_17replace(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_17replace = {__Pyx_NAMESTR("replace"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_17replace, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_17replace(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_to_replace = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_filter = 0;
      PyObject *__pyx_v_regex = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_to_replace,&__pyx_n_s_value,&__pyx_n_s_inplace,&__pyx_n_s_filter,&__pyx_n_s_regex,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":1482
     *                                np.datetime64, np.bool_))
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         blk = [self]
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_16replace(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_to_replace, PyObject *__pyx_v_value, PyObject *__pyx_v_inplace, PyObject *__pyx_v_filter, PyObject *__pyx_v_regex) {
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_to_rep_is_list = NULL;
      PyObject *__pyx_v_value_is_list = NULL;
      PyObject *__pyx_v_both_lists = NULL;
      PyObject *__pyx_v_either_list = NULL;
      PyObject *__pyx_v_to_rep = NULL;
      PyObject *__pyx_v_v = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace", 0);

      /* "pandas/internals.pyx":1482
     *                                np.datetime64, np.bool_))
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         blk = [self]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.replace", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_to_rep_is_list);
      __Pyx_XDECREF(__pyx_v_value_is_list);
      __Pyx_XDECREF(__pyx_v_both_lists);
      __Pyx_XDECREF(__pyx_v_either_list);
      __Pyx_XDECREF(__pyx_v_to_rep);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1482
     *                                np.datetime64, np.bool_))
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         blk = [self]
     */
      __pyx_tuple__363 = PyTuple_Pack(13, __pyx_n_s_self, __pyx_n_s_to_replace, __pyx_n_s_value, __pyx_n_s_inplace, __pyx_n_s_filter, __pyx_n_s_regex, __pyx_n_s_blk, __pyx_n_s_to_rep_is_list, __pyx_n_s_value_is_list, __pyx_n_s_both_lists, __pyx_n_s_either_list, __pyx_n_s_to_rep, __pyx_n_s_v); if (unlikely(!__pyx_tuple__363)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__363);
      __Pyx_GIVEREF(__pyx_tuple__363);
      __pyx_codeobj__364 = (PyObject*)__Pyx_PyCode_New(6, 0, 13, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__363, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_replace, 1482, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__364)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1482
     *                                np.datetime64, np.bool_))
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                 regex=False):
     *         blk = [self]
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_17replace, 0, __pyx_n_s_ObjectBlock_replace, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__364)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__365);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_replace, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__365 = PyTuple_Pack(3, ((PyObject *)Py_False), ((PyObject *)Py_None), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__365)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__365);
      __Pyx_GIVEREF(__pyx_tuple__365);

     1483:                 regex=False):

        /* "pandas/internals.pyx":1483
     *
     *     def replace(self, to_replace, value, inplace=False, filter=None,
     *                 regex=False):             # <<<<<<<<<<<<<<
     *         blk = [self]
     *         to_rep_is_list = com.is_list_like(to_replace)
     */
        values[5] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_to_replace)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("replace", 0, 3, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("replace", 0, 3, 6, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_filter);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_regex);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "replace") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_to_replace = values[1];
        __pyx_v_value = values[2];
        __pyx_v_inplace = values[3];
        __pyx_v_filter = values[4];
        __pyx_v_regex = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("replace", 0, 3, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1482; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock.replace", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_16replace(__pyx_self, __pyx_v_self, __pyx_v_to_replace, __pyx_v_value, __pyx_v_inplace, __pyx_v_filter, __pyx_v_regex);

     1484:         blk = [self]

      /* "pandas/internals.pyx":1484
     *     def replace(self, to_replace, value, inplace=False, filter=None,
     *                 regex=False):
     *         blk = [self]             # <<<<<<<<<<<<<<
     *         to_rep_is_list = com.is_list_like(to_replace)
     *         value_is_list = com.is_list_like(value)
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1484; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_self);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __pyx_v_blk = __pyx_t_1;
      __pyx_t_1 = 0;

     1485:         to_rep_is_list = com.is_list_like(to_replace)

      /* "pandas/internals.pyx":1485
     *                 regex=False):
     *         blk = [self]
     *         to_rep_is_list = com.is_list_like(to_replace)             # <<<<<<<<<<<<<<
     *         value_is_list = com.is_list_like(value)
     *         both_lists = to_rep_is_list and value_is_list
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_list_like); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_to_replace);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_to_replace);
      __Pyx_GIVEREF(__pyx_v_to_replace);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_to_rep_is_list = __pyx_t_3;
      __pyx_t_3 = 0;

     1486:         value_is_list = com.is_list_like(value)

      /* "pandas/internals.pyx":1486
     *         blk = [self]
     *         to_rep_is_list = com.is_list_like(to_replace)
     *         value_is_list = com.is_list_like(value)             # <<<<<<<<<<<<<<
     *         both_lists = to_rep_is_list and value_is_list
     *         either_list = to_rep_is_list or value_is_list
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_is_list_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_value_is_list = __pyx_t_2;
      __pyx_t_2 = 0;

     1487:         both_lists = to_rep_is_list and value_is_list

      /* "pandas/internals.pyx":1487
     *         to_rep_is_list = com.is_list_like(to_replace)
     *         value_is_list = com.is_list_like(value)
     *         both_lists = to_rep_is_list and value_is_list             # <<<<<<<<<<<<<<
     *         either_list = to_rep_is_list or value_is_list
     *
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_to_rep_is_list); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1487; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {
        __Pyx_INCREF(__pyx_v_value_is_list);
        __pyx_t_2 = __pyx_v_value_is_list;
      } else {
        __Pyx_INCREF(__pyx_v_to_rep_is_list);
        __pyx_t_2 = __pyx_v_to_rep_is_list;
      }
      __pyx_v_both_lists = __pyx_t_2;
      __pyx_t_2 = 0;

     1488:         either_list = to_rep_is_list or value_is_list

      /* "pandas/internals.pyx":1488
     *         value_is_list = com.is_list_like(value)
     *         both_lists = to_rep_is_list and value_is_list
     *         either_list = to_rep_is_list or value_is_list             # <<<<<<<<<<<<<<
     *
     *         if not either_list and com.is_re(to_replace):
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_to_rep_is_list); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_4) {
        __Pyx_INCREF(__pyx_v_value_is_list);
        __pyx_t_2 = __pyx_v_value_is_list;
      } else {
        __Pyx_INCREF(__pyx_v_to_rep_is_list);
        __pyx_t_2 = __pyx_v_to_rep_is_list;
      }
      __pyx_v_either_list = __pyx_t_2;
      __pyx_t_2 = 0;

     1489:

     1490:         if not either_list and com.is_re(to_replace):

      /* "pandas/internals.pyx":1490
     *         either_list = to_rep_is_list or value_is_list
     *
     *         if not either_list and com.is_re(to_replace):             # <<<<<<<<<<<<<<
     *             blk[0], = blk[0]._replace_single(to_replace, value,
     *                                              inplace=inplace, filter=filter,
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_either_list); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = (!__pyx_t_4);
      if (__pyx_t_5) {
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_is_re); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_to_replace);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_to_replace);
        __Pyx_GIVEREF(__pyx_v_to_replace);
        __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_6 = __pyx_t_4;
      } else {
        __pyx_t_6 = __pyx_t_5;
      }
      if (__pyx_t_6) {

     1491:             blk[0], = blk[0]._replace_single(to_replace, value,

        /* "pandas/internals.pyx":1491
     *
     *         if not either_list and com.is_re(to_replace):
     *             blk[0], = blk[0]._replace_single(to_replace, value,             # <<<<<<<<<<<<<<
     *                                              inplace=inplace, filter=filter,
     *                                              regex=True)
     */
        __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_blk, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_replace_single); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_to_replace);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_to_replace);
        __Pyx_GIVEREF(__pyx_v_to_replace);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);

        /* "pandas/internals.pyx":1491
     *
     *         if not either_list and com.is_re(to_replace):
     *             blk[0], = blk[0]._replace_single(to_replace, value,             # <<<<<<<<<<<<<<
     *                                              inplace=inplace, filter=filter,
     *                                              regex=True)
     */
        __pyx_t_7 = PyObject_Call(__pyx_t_2, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
          PyObject* sequence = __pyx_t_7;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 1)) {
            if (size > 1) __Pyx_RaiseTooManyValuesError(1);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
          } else {
            __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
          }
          __Pyx_INCREF(__pyx_t_3);
          #else
          __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          #endif
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
          index = 0; __pyx_t_3 = __pyx_t_8(__pyx_t_1); if (unlikely(!__pyx_t_3)) goto __pyx_L4_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_1), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L5_unpacking_done;
          __pyx_L4_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L5_unpacking_done:;
        }
        if (unlikely(__Pyx_SetItemInt(__pyx_v_blk, 0, __pyx_t_3, long, 1, __Pyx_PyInt_From_long, 0, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L3;
      }

     1492:                                              inplace=inplace, filter=filter,

        /* "pandas/internals.pyx":1492
     *         if not either_list and com.is_re(to_replace):
     *             blk[0], = blk[0]._replace_single(to_replace, value,
     *                                              inplace=inplace, filter=filter,             # <<<<<<<<<<<<<<
     *                                              regex=True)
     *         elif not (either_list or regex):
     */
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_filter, __pyx_v_filter) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1493:                                              regex=True)

        /* "pandas/internals.pyx":1493
     *             blk[0], = blk[0]._replace_single(to_replace, value,
     *                                              inplace=inplace, filter=filter,
     *                                              regex=True)             # <<<<<<<<<<<<<<
     *         elif not (either_list or regex):
     *             blk = super(ObjectBlock, self).replace(to_replace, value,
     */
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_regex, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1494:         elif not (either_list or regex):

      /* "pandas/internals.pyx":1494
     *                                              inplace=inplace, filter=filter,
     *                                              regex=True)
     *         elif not (either_list or regex):             # <<<<<<<<<<<<<<
     *             blk = super(ObjectBlock, self).replace(to_replace, value,
     *                                                    inplace=inplace,
     */
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_either_list); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1494; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_6) {
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_regex); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1494; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = __pyx_t_5;
      } else {
        __pyx_t_4 = __pyx_t_6;
      }
      __pyx_t_6 = ((!__pyx_t_4) != 0);
      if (__pyx_t_6) {

     1495:             blk = super(ObjectBlock, self).replace(to_replace, value,

        /* "pandas/internals.pyx":1495
     *                                              regex=True)
     *         elif not (either_list or regex):
     *             blk = super(ObjectBlock, self).replace(to_replace, value,             # <<<<<<<<<<<<<<
     *                                                    inplace=inplace,
     *                                                    filter=filter, regex=regex)
     */
        __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_ObjectBlock); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_7);
        __Pyx_GIVEREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_self);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self);
        __Pyx_GIVEREF(__pyx_v_self);
        __pyx_t_7 = 0;
        __pyx_t_7 = PyObject_Call(__pyx_builtin_super, __pyx_t_3, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_replace); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_to_replace);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_to_replace);
        __Pyx_GIVEREF(__pyx_v_to_replace);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":1495
     *                                              regex=True)
     *         elif not (either_list or regex):
     *             blk = super(ObjectBlock, self).replace(to_replace, value,             # <<<<<<<<<<<<<<
     *                                                    inplace=inplace,
     *                                                    filter=filter, regex=regex)
     */
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_7, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_blk, __pyx_t_2);
        __pyx_t_2 = 0;
        goto __pyx_L3;
      }

     1496:                                                    inplace=inplace,

        /* "pandas/internals.pyx":1496
     *         elif not (either_list or regex):
     *             blk = super(ObjectBlock, self).replace(to_replace, value,
     *                                                    inplace=inplace,             # <<<<<<<<<<<<<<
     *                                                    filter=filter, regex=regex)
     *         elif both_lists:
     */
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1497:                                                    filter=filter, regex=regex)

        /* "pandas/internals.pyx":1497
     *             blk = super(ObjectBlock, self).replace(to_replace, value,
     *                                                    inplace=inplace,
     *                                                    filter=filter, regex=regex)             # <<<<<<<<<<<<<<
     *         elif both_lists:
     *             for to_rep, v in zip(to_replace, value):
     */
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_filter, __pyx_v_filter) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_regex, __pyx_v_regex) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1498:         elif both_lists:

      /* "pandas/internals.pyx":1498
     *                                                    inplace=inplace,
     *                                                    filter=filter, regex=regex)
     *         elif both_lists:             # <<<<<<<<<<<<<<
     *             for to_rep, v in zip(to_replace, value):
     *                 blk[0], = blk[0]._replace_single(to_rep, v, inplace=inplace,
     */
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_both_lists); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_6) {

     1499:             for to_rep, v in zip(to_replace, value):

        /* "pandas/internals.pyx":1499
     *                                                    filter=filter, regex=regex)
     *         elif both_lists:
     *             for to_rep, v in zip(to_replace, value):             # <<<<<<<<<<<<<<
     *                 blk[0], = blk[0]._replace_single(to_rep, v, inplace=inplace,
     *                                                  filter=filter, regex=regex)
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_to_replace);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_to_replace);
        __Pyx_GIVEREF(__pyx_v_to_replace);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_7 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) {
          __pyx_t_1 = __pyx_t_7; __Pyx_INCREF(__pyx_t_1); __pyx_t_9 = 0;
          __pyx_t_10 = NULL;
        } else {
          __pyx_t_9 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_10 = Py_TYPE(__pyx_t_1)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        for (;;) {
          if (!__pyx_t_10 && PyList_CheckExact(__pyx_t_1)) {
            if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_7); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_10 && PyTuple_CheckExact(__pyx_t_1)) {
            if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_7); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_7 = __pyx_t_10(__pyx_t_1);
            if (unlikely(!__pyx_t_7)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_7);
          }
          if ((likely(PyTuple_CheckExact(__pyx_t_7))) || (PyList_CheckExact(__pyx_t_7))) {
            PyObject* sequence = __pyx_t_7;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_2);
            __Pyx_INCREF(__pyx_t_3);
            #else
            __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            #endif
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_11 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __pyx_t_8 = Py_TYPE(__pyx_t_11)->tp_iternext;
            index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_2)) goto __pyx_L8_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_2);
            index = 1; __pyx_t_3 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_3)) goto __pyx_L8_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_3);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_11), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_8 = NULL;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            goto __pyx_L9_unpacking_done;
            __pyx_L8_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __pyx_t_8 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L9_unpacking_done:;
          }
          __Pyx_XDECREF_SET(__pyx_v_to_rep, __pyx_t_2);
          __pyx_t_2 = 0;
          __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_3);
          __pyx_t_3 = 0;

     1500:                 blk[0], = blk[0]._replace_single(to_rep, v, inplace=inplace,

          /* "pandas/internals.pyx":1500
     *         elif both_lists:
     *             for to_rep, v in zip(to_replace, value):
     *                 blk[0], = blk[0]._replace_single(to_rep, v, inplace=inplace,             # <<<<<<<<<<<<<<
     *                                                  filter=filter, regex=regex)
     *         elif to_rep_is_list and regex:
     */
          __pyx_t_7 = __Pyx_GetItemInt(__pyx_v_blk, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_7 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_replace_single); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_INCREF(__pyx_v_to_rep);
          PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_to_rep);
          __Pyx_GIVEREF(__pyx_v_to_rep);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":1500
     *         elif both_lists:
     *             for to_rep, v in zip(to_replace, value):
     *                 blk[0], = blk[0]._replace_single(to_rep, v, inplace=inplace,             # <<<<<<<<<<<<<<
     *                                                  filter=filter, regex=regex)
     *         elif to_rep_is_list and regex:
     */
          __pyx_t_11 = PyObject_Call(__pyx_t_3, __pyx_t_7, __pyx_t_2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          if ((likely(PyTuple_CheckExact(__pyx_t_11))) || (PyList_CheckExact(__pyx_t_11))) {
            PyObject* sequence = __pyx_t_11;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 1)) {
              if (size > 1) __Pyx_RaiseTooManyValuesError(1);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
            } else {
              __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
            }
            __Pyx_INCREF(__pyx_t_2);
            #else
            __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            #endif
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_7 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
            index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L10_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_2);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_8 = NULL;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L11_unpacking_done;
            __pyx_L10_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __pyx_t_8 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L11_unpacking_done:;
          }
          if (unlikely(__Pyx_SetItemInt(__pyx_v_blk, 0, __pyx_t_2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        goto __pyx_L3;
      }

     1501:                                                  filter=filter, regex=regex)

          /* "pandas/internals.pyx":1501
     *             for to_rep, v in zip(to_replace, value):
     *                 blk[0], = blk[0]._replace_single(to_rep, v, inplace=inplace,
     *                                                  filter=filter, regex=regex)             # <<<<<<<<<<<<<<
     *         elif to_rep_is_list and regex:
     *             for to_rep in to_replace:
     */
          if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_filter, __pyx_v_filter) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_regex, __pyx_v_regex) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1502:         elif to_rep_is_list and regex:

      /* "pandas/internals.pyx":1502
     *                 blk[0], = blk[0]._replace_single(to_rep, v, inplace=inplace,
     *                                                  filter=filter, regex=regex)
     *         elif to_rep_is_list and regex:             # <<<<<<<<<<<<<<
     *             for to_rep in to_replace:
     *                 blk[0], = blk[0]._replace_single(to_rep, value,
     */
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_to_rep_is_list); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_6) {
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_regex); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = __pyx_t_4;
      } else {
        __pyx_t_5 = __pyx_t_6;
      }
      if (__pyx_t_5) {

     1503:             for to_rep in to_replace:

        /* "pandas/internals.pyx":1503
     *                                                  filter=filter, regex=regex)
     *         elif to_rep_is_list and regex:
     *             for to_rep in to_replace:             # <<<<<<<<<<<<<<
     *                 blk[0], = blk[0]._replace_single(to_rep, value,
     *                                                  inplace=inplace,
     */
        if (PyList_CheckExact(__pyx_v_to_replace) || PyTuple_CheckExact(__pyx_v_to_replace)) {
          __pyx_t_1 = __pyx_v_to_replace; __Pyx_INCREF(__pyx_t_1); __pyx_t_9 = 0;
          __pyx_t_10 = NULL;
        } else {
          __pyx_t_9 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_to_replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_10 = Py_TYPE(__pyx_t_1)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_10 && PyList_CheckExact(__pyx_t_1)) {
            if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_11 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_11); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_11 = PySequence_ITEM(__pyx_t_1, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_10 && PyTuple_CheckExact(__pyx_t_1)) {
            if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_11 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_9); __Pyx_INCREF(__pyx_t_11); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_11 = PySequence_ITEM(__pyx_t_1, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_11 = __pyx_t_10(__pyx_t_1);
            if (unlikely(!__pyx_t_11)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_11);
          }
          __Pyx_XDECREF_SET(__pyx_v_to_rep, __pyx_t_11);
          __pyx_t_11 = 0;

     1504:                 blk[0], = blk[0]._replace_single(to_rep, value,

          /* "pandas/internals.pyx":1504
     *         elif to_rep_is_list and regex:
     *             for to_rep in to_replace:
     *                 blk[0], = blk[0]._replace_single(to_rep, value,             # <<<<<<<<<<<<<<
     *                                                  inplace=inplace,
     *                                                  filter=filter, regex=regex)
     */
          __pyx_t_11 = __Pyx_GetItemInt(__pyx_v_blk, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_replace_single); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_to_rep);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_to_rep);
          __Pyx_GIVEREF(__pyx_v_to_rep);
          __Pyx_INCREF(__pyx_v_value);
          PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_value);
          __Pyx_GIVEREF(__pyx_v_value);
          __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);

          /* "pandas/internals.pyx":1504
     *         elif to_rep_is_list and regex:
     *             for to_rep in to_replace:
     *                 blk[0], = blk[0]._replace_single(to_rep, value,             # <<<<<<<<<<<<<<
     *                                                  inplace=inplace,
     *                                                  filter=filter, regex=regex)
     */
          __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_11, __pyx_t_7); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
            PyObject* sequence = __pyx_t_3;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 1)) {
              if (size > 1) __Pyx_RaiseTooManyValuesError(1);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
            } else {
              __pyx_t_7 = PyList_GET_ITEM(sequence, 0);
            }
            __Pyx_INCREF(__pyx_t_7);
            #else
            __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            #endif
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_11 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_8 = Py_TYPE(__pyx_t_11)->tp_iternext;
            index = 0; __pyx_t_7 = __pyx_t_8(__pyx_t_11); if (unlikely(!__pyx_t_7)) goto __pyx_L14_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_7);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_11), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_8 = NULL;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            goto __pyx_L15_unpacking_done;
            __pyx_L14_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __pyx_t_8 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L15_unpacking_done:;
          }
          if (unlikely(__Pyx_SetItemInt(__pyx_v_blk, 0, __pyx_t_7, long, 1, __Pyx_PyInt_From_long, 0, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     1505:                                                  inplace=inplace,

          /* "pandas/internals.pyx":1505
     *             for to_rep in to_replace:
     *                 blk[0], = blk[0]._replace_single(to_rep, value,
     *                                                  inplace=inplace,             # <<<<<<<<<<<<<<
     *                                                  filter=filter, regex=regex)
     *         else:
     */
          if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1506:                                                  filter=filter, regex=regex)

          /* "pandas/internals.pyx":1506
     *                 blk[0], = blk[0]._replace_single(to_rep, value,
     *                                                  inplace=inplace,
     *                                                  filter=filter, regex=regex)             # <<<<<<<<<<<<<<
     *         else:
     *             blk[0], = blk[0]._replace_single(to_replace, value,
     */
          if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_filter, __pyx_v_filter) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_regex, __pyx_v_regex) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1507:         else:

     1508:             blk[0], = blk[0]._replace_single(to_replace, value,

        /* "pandas/internals.pyx":1508
     *                                                  filter=filter, regex=regex)
     *         else:
     *             blk[0], = blk[0]._replace_single(to_replace, value,             # <<<<<<<<<<<<<<
     *                                              inplace=inplace, filter=filter,
     *                                              regex=regex)
     */
        __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_blk, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_replace_single); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_to_replace);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_to_replace);
        __Pyx_GIVEREF(__pyx_v_to_replace);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);

        /* "pandas/internals.pyx":1508
     *                                                  filter=filter, regex=regex)
     *         else:
     *             blk[0], = blk[0]._replace_single(to_replace, value,             # <<<<<<<<<<<<<<
     *                                              inplace=inplace, filter=filter,
     *                                              regex=regex)
     */
        __pyx_t_11 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_11))) || (PyList_CheckExact(__pyx_t_11))) {
          PyObject* sequence = __pyx_t_11;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 1)) {
            if (size > 1) __Pyx_RaiseTooManyValuesError(1);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
          } else {
            __pyx_t_7 = PyList_GET_ITEM(sequence, 0);
          }
          __Pyx_INCREF(__pyx_t_7);
          #else
          __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          #endif
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_1 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
          index = 0; __pyx_t_7 = __pyx_t_8(__pyx_t_1); if (unlikely(!__pyx_t_7)) goto __pyx_L16_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_7);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_1), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L17_unpacking_done;
          __pyx_L16_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L17_unpacking_done:;
        }
        if (unlikely(__Pyx_SetItemInt(__pyx_v_blk, 0, __pyx_t_7, long, 1, __Pyx_PyInt_From_long, 0, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      __pyx_L3:;

     1509:                                              inplace=inplace, filter=filter,

        /* "pandas/internals.pyx":1509
     *         else:
     *             blk[0], = blk[0]._replace_single(to_replace, value,
     *                                              inplace=inplace, filter=filter,             # <<<<<<<<<<<<<<
     *                                              regex=regex)
     *         return blk
     */
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_filter, __pyx_v_filter) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1510:                                              regex=regex)

        /* "pandas/internals.pyx":1510
     *             blk[0], = blk[0]._replace_single(to_replace, value,
     *                                              inplace=inplace, filter=filter,
     *                                              regex=regex)             # <<<<<<<<<<<<<<
     *         return blk
     *
     */
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_regex, __pyx_v_regex) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1511:         return blk

      /* "pandas/internals.pyx":1511
     *                                              inplace=inplace, filter=filter,
     *                                              regex=regex)
     *         return blk             # <<<<<<<<<<<<<<
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_blk);
      __pyx_r = __pyx_v_blk;
      goto __pyx_L0;

     1512:

     1513:     def _replace_single(self, to_replace, value, inplace=False, filter=None,

    /* "pandas/internals.pyx":1513
     *         return blk
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                         regex=False):
     *         # to_replace is regex compilable
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_19_replace_single(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_19_replace_single = {__Pyx_NAMESTR("_replace_single"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_19_replace_single, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_19_replace_single(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_to_replace = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_filter = 0;
      PyObject *__pyx_v_regex = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_replace_single (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_to_replace,&__pyx_n_s_value,&__pyx_n_s_inplace,&__pyx_n_s_filter,&__pyx_n_s_regex,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":1513
     *         return blk
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                         regex=False):
     *         # to_replace is regex compilable
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":1513
     *         return blk
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                         regex=False):
     *         # to_replace is regex compilable
     */

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_18_replace_single(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_to_replace, PyObject *__pyx_v_value, PyObject *__pyx_v_inplace, PyObject *__pyx_v_filter, PyObject *__pyx_v_regex) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *__pyx_cur_scope;
      PyObject *__pyx_v_to_rep_re = NULL;
      PyObject *__pyx_v_regex_re = NULL;
      PyObject *__pyx_v_pattern = NULL;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_re_replacer = 0;
      PyObject *__pyx_v_f = NULL;
      PyObject *__pyx_v_filt = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_replace_single", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_5__replace_single(__pyx_ptype_6pandas_9internals___pyx_scope_struct_5__replace_single, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_value = __pyx_v_value;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
      __Pyx_INCREF(__pyx_v_to_replace);
      __Pyx_INCREF(__pyx_v_regex);

      /* "pandas/internals.pyx":1513
     *         return blk
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                         regex=False):
     *         # to_replace is regex compilable
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_to_rep_re);
      __Pyx_XDECREF(__pyx_v_regex_re);
      __Pyx_XDECREF(__pyx_v_pattern);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_re_replacer);
      __Pyx_XDECREF(__pyx_v_f);
      __Pyx_XDECREF(__pyx_v_filt);
      __Pyx_XDECREF(__pyx_v_to_replace);
      __Pyx_XDECREF(__pyx_v_regex);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1513
     *         return blk
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                         regex=False):
     *         # to_replace is regex compilable
     */
      __pyx_tuple__366 = PyTuple_Pack(17, __pyx_n_s_self, __pyx_n_s_to_replace, __pyx_n_s_value, __pyx_n_s_inplace, __pyx_n_s_filter, __pyx_n_s_regex, __pyx_n_s_to_rep_re, __pyx_n_s_regex_re, __pyx_n_s_pattern, __pyx_n_s_rx, __pyx_n_s_result, __pyx_n_s_new_values, __pyx_n_s_re_replacer, __pyx_n_s_re_replacer, __pyx_n_s_re_replacer, __pyx_n_s_f, __pyx_n_s_filt); if (unlikely(!__pyx_tuple__366)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__366);
      __Pyx_GIVEREF(__pyx_tuple__366);
      __pyx_codeobj__367 = (PyObject*)__Pyx_PyCode_New(6, 0, 17, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__366, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_replace_single, 1513, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__367)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1513
     *         return blk
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                         regex=False):
     *         # to_replace is regex compilable
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_19_replace_single, 0, __pyx_n_s_ObjectBlock__replace_single, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__367)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__368);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_replace_single, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__368 = PyTuple_Pack(3, ((PyObject *)Py_False), ((PyObject *)Py_None), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__368)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__368);
      __Pyx_GIVEREF(__pyx_tuple__368);

    /* "pandas/internals.pyx":1513
     *         return blk
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,             # <<<<<<<<<<<<<<
     *                         regex=False):
     *         # to_replace is regex compilable
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single {
      PyObject_HEAD
      PyObject *__pyx_v_rx;
      PyObject *__pyx_v_value;
    };

     1514:                         regex=False):

        /* "pandas/internals.pyx":1514
     *
     *     def _replace_single(self, to_replace, value, inplace=False, filter=None,
     *                         regex=False):             # <<<<<<<<<<<<<<
     *         # to_replace is regex compilable
     *         to_rep_re = com.is_re_compilable(to_replace)
     */
        values[5] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_to_replace)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_replace_single", 0, 3, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_replace_single", 0, 3, 6, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_filter);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_regex);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_replace_single") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_to_replace = values[1];
        __pyx_v_value = values[2];
        __pyx_v_inplace = values[3];
        __pyx_v_filter = values[4];
        __pyx_v_regex = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_replace_single", 0, 3, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1513; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_18_replace_single(__pyx_self, __pyx_v_self, __pyx_v_to_replace, __pyx_v_value, __pyx_v_inplace, __pyx_v_filter, __pyx_v_regex);

     1515:         # to_replace is regex compilable

     1516:         to_rep_re = com.is_re_compilable(to_replace)

      /* "pandas/internals.pyx":1516
     *                         regex=False):
     *         # to_replace is regex compilable
     *         to_rep_re = com.is_re_compilable(to_replace)             # <<<<<<<<<<<<<<
     *
     *         # regex is regex compilable
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_re_compilable); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_to_replace);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_to_replace);
      __Pyx_GIVEREF(__pyx_v_to_replace);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_to_rep_re = __pyx_t_3;
      __pyx_t_3 = 0;

     1517:

     1518:         # regex is regex compilable

     1519:         regex_re = com.is_re_compilable(regex)

      /* "pandas/internals.pyx":1519
     *
     *         # regex is regex compilable
     *         regex_re = com.is_re_compilable(regex)             # <<<<<<<<<<<<<<
     *
     *         # only one will survive
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_is_re_compilable); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_regex);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_regex);
      __Pyx_GIVEREF(__pyx_v_regex);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_regex_re = __pyx_t_2;
      __pyx_t_2 = 0;

     1520:

     1521:         # only one will survive

     1522:         if to_rep_re and regex_re:

      /* "pandas/internals.pyx":1522
     *
     *         # only one will survive
     *         if to_rep_re and regex_re:             # <<<<<<<<<<<<<<
     *             raise AssertionError('only one of to_replace and regex can be '
     *                                  'regex compilable')
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_to_rep_re); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_regex_re); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_4;
      }
      if (__pyx_t_6) {

     1523:             raise AssertionError('only one of to_replace and regex can be '

        /* "pandas/internals.pyx":1523
     *         # only one will survive
     *         if to_rep_re and regex_re:
     *             raise AssertionError('only one of to_replace and regex can be '             # <<<<<<<<<<<<<<
     *                                  'regex compilable')
     *
     */
        __pyx_t_2 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__37, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_Raise(__pyx_t_2, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":1523
     *         # only one will survive
     *         if to_rep_re and regex_re:
     *             raise AssertionError('only one of to_replace and regex can be '             # <<<<<<<<<<<<<<
     *                                  'regex compilable')
     *
     */
      __pyx_tuple__37 = PyTuple_Pack(1, __pyx_kp_s_only_one_of_to_replace_and_regex); if (unlikely(!__pyx_tuple__37)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__37);
      __Pyx_GIVEREF(__pyx_tuple__37);

     1524:                                  'regex compilable')

     1525:

     1526:         # if regex was passed as something that can be a regex (rather than a

     1527:         # boolean)

     1528:         if regex_re:

      /* "pandas/internals.pyx":1528
     *         # if regex was passed as something that can be a regex (rather than a
     *         # boolean)
     *         if regex_re:             # <<<<<<<<<<<<<<
     *             to_replace = regex
     *
     */
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_regex_re); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_6) {

     1529:             to_replace = regex

        /* "pandas/internals.pyx":1529
     *         # boolean)
     *         if regex_re:
     *             to_replace = regex             # <<<<<<<<<<<<<<
     *
     *         regex = regex_re or to_rep_re
     */
        __Pyx_INCREF(__pyx_v_regex);
        __Pyx_DECREF_SET(__pyx_v_to_replace, __pyx_v_regex);
        goto __pyx_L4;
      }
      __pyx_L4:;

     1530:

     1531:         regex = regex_re or to_rep_re

      /* "pandas/internals.pyx":1531
     *             to_replace = regex
     *
     *         regex = regex_re or to_rep_re             # <<<<<<<<<<<<<<
     *
     *         # try to get the pattern attribute (compiled re) or it's a string
     */
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_regex_re); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1531; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_6) {
        __Pyx_INCREF(__pyx_v_to_rep_re);
        __pyx_t_2 = __pyx_v_to_rep_re;
      } else {
        __Pyx_INCREF(__pyx_v_regex_re);
        __pyx_t_2 = __pyx_v_regex_re;
      }
      __Pyx_DECREF_SET(__pyx_v_regex, __pyx_t_2);
      __pyx_t_2 = 0;

     1532:

     1533:         # try to get the pattern attribute (compiled re) or it's a string

     1534:         try:

      /* "pandas/internals.pyx":1534
     *
     *         # try to get the pattern attribute (compiled re) or it's a string
     *         try:             # <<<<<<<<<<<<<<
     *             pattern = to_replace.pattern
     *         except AttributeError:
     */
      {
        /*try:*/ {

     1535:             pattern = to_replace.pattern

          /* "pandas/internals.pyx":1535
     *         # try to get the pattern attribute (compiled re) or it's a string
     *         try:
     *             pattern = to_replace.pattern             # <<<<<<<<<<<<<<
     *         except AttributeError:
     *             pattern = to_replace
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_to_replace, __pyx_n_s_pattern); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1535; __pyx_clineno = __LINE__; goto __pyx_L5_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_v_pattern = __pyx_t_2;
          __pyx_t_2 = 0;
        }
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L12_try_end;
        __pyx_L5_error:;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;

     1536:         except AttributeError:

        /* "pandas/internals.pyx":1536
     *         try:
     *             pattern = to_replace.pattern
     *         except AttributeError:             # <<<<<<<<<<<<<<
     *             pattern = to_replace
     *
     */
        __pyx_t_10 = PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
        if (__pyx_t_10) {
          __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_2, &__pyx_t_3, &__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1536; __pyx_clineno = __LINE__; goto __pyx_L7_except_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_1);

     1537:             pattern = to_replace

          /* "pandas/internals.pyx":1537
     *             pattern = to_replace.pattern
     *         except AttributeError:
     *             pattern = to_replace             # <<<<<<<<<<<<<<
     *
     *         # if the pattern is not empty and to_replace is either a string or a
     */
          __Pyx_INCREF(__pyx_v_to_replace);
          __Pyx_XDECREF_SET(__pyx_v_pattern, __pyx_v_to_replace);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L6_exception_handled;
        }
        goto __pyx_L7_except_error;
        __pyx_L7_except_error:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        goto __pyx_L1_error;
        __pyx_L6_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
        __pyx_L12_try_end:;
      }

     1538:

     1539:         # if the pattern is not empty and to_replace is either a string or a

     1540:         # regex

     1541:         if regex and pattern:

      /* "pandas/internals.pyx":1541
     *         # if the pattern is not empty and to_replace is either a string or a
     *         # regex
     *         if regex and pattern:             # <<<<<<<<<<<<<<
     *             rx = re.compile(to_replace)
     *         else:
     */
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_regex); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1541; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_6) {
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_pattern); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1541; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = __pyx_t_4;
      } else {
        __pyx_t_5 = __pyx_t_6;
      }
      if (__pyx_t_5) {

     1542:             rx = re.compile(to_replace)

        /* "pandas/internals.pyx":1542
     *         # regex
     *         if regex and pattern:
     *             rx = re.compile(to_replace)             # <<<<<<<<<<<<<<
     *         else:
     *             # if the thing to replace is not a string or compiled regex call
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_re); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_compile); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_to_replace);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_to_replace);
        __Pyx_GIVEREF(__pyx_v_to_replace);
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_cur_scope->__pyx_v_rx = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L15;
      }
      /*else*/ {

     1543:         else:

     1544:             # if the thing to replace is not a string or compiled regex call

     1545:             # the superclass method -> to_replace is some kind of object

     1546:             result = super(ObjectBlock, self).replace(to_replace, value,

        /* "pandas/internals.pyx":1546
     *             # if the thing to replace is not a string or compiled regex call
     *             # the superclass method -> to_replace is some kind of object
     *             result = super(ObjectBlock, self).replace(to_replace, value,             # <<<<<<<<<<<<<<
     *                                                       inplace=inplace,
     *                                                       filter=filter,
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_ObjectBlock); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_self);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self);
        __Pyx_GIVEREF(__pyx_v_self);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_builtin_super, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_replace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_to_replace);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_to_replace);
        __Pyx_GIVEREF(__pyx_v_to_replace);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_cur_scope->__pyx_v_value);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
        __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);

        /* "pandas/internals.pyx":1546
     *             # if the thing to replace is not a string or compiled regex call
     *             # the superclass method -> to_replace is some kind of object
     *             result = super(ObjectBlock, self).replace(to_replace, value,             # <<<<<<<<<<<<<<
     *                                                       inplace=inplace,
     *                                                       filter=filter,
     */
        __pyx_t_11 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_v_result = __pyx_t_11;
        __pyx_t_11 = 0;

     1547:                                                       inplace=inplace,

        /* "pandas/internals.pyx":1547
     *             # the superclass method -> to_replace is some kind of object
     *             result = super(ObjectBlock, self).replace(to_replace, value,
     *                                                       inplace=inplace,             # <<<<<<<<<<<<<<
     *                                                       filter=filter,
     *                                                       regex=regex)
     */
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1548:                                                       filter=filter,

        /* "pandas/internals.pyx":1548
     *             result = super(ObjectBlock, self).replace(to_replace, value,
     *                                                       inplace=inplace,
     *                                                       filter=filter,             # <<<<<<<<<<<<<<
     *                                                       regex=regex)
     *             if not isinstance(result, list):
     */
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_filter, __pyx_v_filter) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1549:                                                       regex=regex)

        /* "pandas/internals.pyx":1549
     *                                                       inplace=inplace,
     *                                                       filter=filter,
     *                                                       regex=regex)             # <<<<<<<<<<<<<<
     *             if not isinstance(result, list):
     *                 result = [result]
     */
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_regex, __pyx_v_regex) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1550:             if not isinstance(result, list):

        /* "pandas/internals.pyx":1550
     *                                                       filter=filter,
     *                                                       regex=regex)
     *             if not isinstance(result, list):             # <<<<<<<<<<<<<<
     *                 result = [result]
     *             return result
     */
        __pyx_t_5 = PyList_Check(__pyx_v_result);
        __pyx_t_6 = ((!(__pyx_t_5 != 0)) != 0);
        if (__pyx_t_6) {

     1551:                 result = [result]

          /* "pandas/internals.pyx":1551
     *                                                       regex=regex)
     *             if not isinstance(result, list):
     *                 result = [result]             # <<<<<<<<<<<<<<
     *             return result
     *
     */
          __pyx_t_11 = PyList_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1551; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_result);
          PyList_SET_ITEM(__pyx_t_11, 0, __pyx_v_result);
          __Pyx_GIVEREF(__pyx_v_result);
          __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_11);
          __pyx_t_11 = 0;
          goto __pyx_L16;
        }
        __pyx_L16:;

     1552:             return result

        /* "pandas/internals.pyx":1552
     *             if not isinstance(result, list):
     *                 result = [result]
     *             return result             # <<<<<<<<<<<<<<
     *
     *         new_values = self.values if inplace else self.values.copy()
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_result);
        __pyx_r = __pyx_v_result;
        goto __pyx_L0;
      }
      __pyx_L15:;

     1553:

     1554:         new_values = self.values if inplace else self.values.copy()

      /* "pandas/internals.pyx":1554
     *             return result
     *
     *         new_values = self.values if inplace else self.values.copy()             # <<<<<<<<<<<<<<
     *
     *         # deal with replacing values with objects (strings) that match but
     */
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_6) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_11 = __pyx_t_3;
        __pyx_t_3 = 0;
      } else {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_11 = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_v_new_values = __pyx_t_11;
      __pyx_t_11 = 0;

     1555:

     1556:         # deal with replacing values with objects (strings) that match but

     1557:         # whose replacement is not a string (numeric, nan, object)

     1558:         if isnull(value) or not isinstance(value, compat.string_types):

      /* "pandas/internals.pyx":1558
     *         # deal with replacing values with objects (strings) that match but
     *         # whose replacement is not a string (numeric, nan, object)
     *         if isnull(value) or not isinstance(value, compat.string_types):             # <<<<<<<<<<<<<<
     *             def re_replacer(s):
     *                 try:
     */
      __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_cur_scope->__pyx_v_value);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
      __pyx_t_2 = PyObject_Call(__pyx_t_11, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (!__pyx_t_6) {
        __pyx_t_2 = __pyx_cur_scope->__pyx_v_value;
        __Pyx_INCREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_compat); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_string_types); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_5 = PyObject_IsInstance(__pyx_t_2, __pyx_t_11); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __pyx_t_4 = (!(__pyx_t_5 != 0));
        __pyx_t_5 = __pyx_t_4;
      } else {
        __pyx_t_5 = __pyx_t_6;
      }
      if (__pyx_t_5) {

     1559:             def re_replacer(s):

    /* "pandas/internals.pyx":1559
     *         # whose replacement is not a string (numeric, nan, object)
     *         if isnull(value) or not isinstance(value, compat.string_types):
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return value if rx.search(s) is not None else s
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_15_replace_single_1re_replacer(PyObject *__pyx_self, PyObject *__pyx_v_s); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_15_replace_single_1re_replacer = {__Pyx_NAMESTR("re_replacer"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_15_replace_single_1re_replacer, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_15_replace_single_1re_replacer(PyObject *__pyx_self, PyObject *__pyx_v_s) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("re_replacer (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_15_replace_single_re_replacer(__pyx_self, ((PyObject *)__pyx_v_s));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_15_replace_single_re_replacer(PyObject *__pyx_self, PyObject *__pyx_v_s) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("re_replacer", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":1559
     *         # whose replacement is not a string (numeric, nan, object)
     *         if isnull(value) or not isinstance(value, compat.string_types):
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return value if rx.search(s) is not None else s
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single.re_replacer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1559
     *         # whose replacement is not a string (numeric, nan, object)
     *         if isnull(value) or not isinstance(value, compat.string_types):
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return value if rx.search(s) is not None else s
     */
      __pyx_tuple__38 = PyTuple_Pack(1, __pyx_n_s_s); if (unlikely(!__pyx_tuple__38)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__38);
      __Pyx_GIVEREF(__pyx_tuple__38);

        /* "pandas/internals.pyx":1559
     *         # whose replacement is not a string (numeric, nan, object)
     *         if isnull(value) or not isinstance(value, compat.string_types):
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return value if rx.search(s) is not None else s
     */
        __pyx_t_11 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_15_replace_single_1re_replacer, 0, __pyx_n_s_ObjectBlock__replace_single_loca, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__39)); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __pyx_v_re_replacer = __pyx_t_11;
        __pyx_t_11 = 0;
        goto __pyx_L17;
      }
      /*else*/ {
      __pyx_codeobj__39 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__38, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_re_replacer, 1559, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__39)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1560:                 try:

      /* "pandas/internals.pyx":1560
     *         if isnull(value) or not isinstance(value, compat.string_types):
     *             def re_replacer(s):
     *                 try:             # <<<<<<<<<<<<<<
     *                     return value if rx.search(s) is not None else s
     *                 except TypeError:
     */
      {
        /*try:*/ {

     1561:                     return value if rx.search(s) is not None else s

          /* "pandas/internals.pyx":1561
     *             def re_replacer(s):
     *                 try:
     *                     return value if rx.search(s) is not None else s             # <<<<<<<<<<<<<<
     *                 except TypeError:
     *                     return s
     */
          __Pyx_XDECREF(__pyx_r);
          if (unlikely(!__pyx_cur_scope->__pyx_v_rx)) { __Pyx_RaiseClosureNameError("rx"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1561; __pyx_clineno = __LINE__; goto __pyx_L3_error;} }
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_rx, __pyx_n_s_search); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1561; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1561; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_s);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_s);
          __Pyx_GIVEREF(__pyx_v_s);
          __pyx_t_7 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1561; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_8 = (__pyx_t_7 != Py_None);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          if ((__pyx_t_8 != 0)) {
            if (unlikely(!__pyx_cur_scope->__pyx_v_value)) { __Pyx_RaiseClosureNameError("value"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1561; __pyx_clineno = __LINE__; goto __pyx_L3_error;} }
            __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
            __pyx_t_4 = __pyx_cur_scope->__pyx_v_value;
          } else {
            __Pyx_INCREF(__pyx_v_s);
            __pyx_t_4 = __pyx_v_s;
          }
          __pyx_r = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

     1562:                 except TypeError:

        /* "pandas/internals.pyx":1562
     *                 try:
     *                     return value if rx.search(s) is not None else s
     *                 except TypeError:             # <<<<<<<<<<<<<<
     *                     return s
     *         else:
     */
        __pyx_t_9 = PyErr_ExceptionMatches(__pyx_builtin_TypeError);
        if (__pyx_t_9) {
          __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single.re_replacer", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_7, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1562; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_GOTREF(__pyx_t_6);

     1563:                     return s

          /* "pandas/internals.pyx":1563
     *                     return value if rx.search(s) is not None else s
     *                 except TypeError:
     *                     return s             # <<<<<<<<<<<<<<
     *         else:
     *             # value is guaranteed to be a string here, s can be either a string
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_s);
          __pyx_r = __pyx_v_s;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L4_exception_handled;
        }
        goto __pyx_L5_except_error;
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1564:         else:

     1565:             # value is guaranteed to be a string here, s can be either a string

     1566:             # or null if it's null it gets returned

     1567:             def re_replacer(s):

    /* "pandas/internals.pyx":1567
     *             # value is guaranteed to be a string here, s can be either a string
     *             # or null if it's null it gets returned
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return rx.sub(value, s)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_15_replace_single_3re_replacer(PyObject *__pyx_self, PyObject *__pyx_v_s); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11ObjectBlock_15_replace_single_3re_replacer = {__Pyx_NAMESTR("re_replacer"), (PyCFunction)__pyx_pw_6pandas_9internals_11ObjectBlock_15_replace_single_3re_replacer, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11ObjectBlock_15_replace_single_3re_replacer(PyObject *__pyx_self, PyObject *__pyx_v_s) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("re_replacer (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11ObjectBlock_15_replace_single_2re_replacer(__pyx_self, ((PyObject *)__pyx_v_s));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11ObjectBlock_15_replace_single_2re_replacer(PyObject *__pyx_self, PyObject *__pyx_v_s) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("re_replacer", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_5__replace_single *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":1567
     *             # value is guaranteed to be a string here, s can be either a string
     *             # or null if it's null it gets returned
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return rx.sub(value, s)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single.re_replacer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1567
     *             # value is guaranteed to be a string here, s can be either a string
     *             # or null if it's null it gets returned
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return rx.sub(value, s)
     */
      __pyx_tuple__40 = PyTuple_Pack(1, __pyx_n_s_s); if (unlikely(!__pyx_tuple__40)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1567; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__40);
      __Pyx_GIVEREF(__pyx_tuple__40);

        /* "pandas/internals.pyx":1567
     *             # value is guaranteed to be a string here, s can be either a string
     *             # or null if it's null it gets returned
     *             def re_replacer(s):             # <<<<<<<<<<<<<<
     *                 try:
     *                     return rx.sub(value, s)
     */
        __pyx_t_11 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11ObjectBlock_15_replace_single_3re_replacer, 0, __pyx_n_s_ObjectBlock__replace_single_loca, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__41)); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1567; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __pyx_v_re_replacer = __pyx_t_11;
        __pyx_t_11 = 0;
      }
      __pyx_L17:;
      __pyx_codeobj__41 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__40, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_re_replacer, 1567, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__41)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1567; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1568:                 try:

      /* "pandas/internals.pyx":1568
     *             # or null if it's null it gets returned
     *             def re_replacer(s):
     *                 try:             # <<<<<<<<<<<<<<
     *                     return rx.sub(value, s)
     *                 except TypeError:
     */
      {
        /*try:*/ {

     1569:                     return rx.sub(value, s)

          /* "pandas/internals.pyx":1569
     *             def re_replacer(s):
     *                 try:
     *                     return rx.sub(value, s)             # <<<<<<<<<<<<<<
     *                 except TypeError:
     *                     return s
     */
          __Pyx_XDECREF(__pyx_r);
          if (unlikely(!__pyx_cur_scope->__pyx_v_rx)) { __Pyx_RaiseClosureNameError("rx"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1569; __pyx_clineno = __LINE__; goto __pyx_L3_error;} }
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_rx, __pyx_n_s_sub); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1569; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          if (unlikely(!__pyx_cur_scope->__pyx_v_value)) { __Pyx_RaiseClosureNameError("value"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1569; __pyx_clineno = __LINE__; goto __pyx_L3_error;} }
          __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1569; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_cur_scope->__pyx_v_value);
          __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
          __Pyx_INCREF(__pyx_v_s);
          PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_s);
          __Pyx_GIVEREF(__pyx_v_s);
          __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1569; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_r = __pyx_t_6;
          __pyx_t_6 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;

     1570:                 except TypeError:

        /* "pandas/internals.pyx":1570
     *                 try:
     *                     return rx.sub(value, s)
     *                 except TypeError:             # <<<<<<<<<<<<<<
     *                     return s
     *
     */
        __pyx_t_7 = PyErr_ExceptionMatches(__pyx_builtin_TypeError);
        if (__pyx_t_7) {
          __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single.re_replacer", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_6, &__pyx_t_5, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1570; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);

     1571:                     return s

          /* "pandas/internals.pyx":1571
     *                     return rx.sub(value, s)
     *                 except TypeError:
     *                     return s             # <<<<<<<<<<<<<<
     *
     *         f = np.vectorize(re_replacer, otypes=[self.dtype])
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_s);
          __pyx_r = __pyx_v_s;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L4_exception_handled;
        }
        goto __pyx_L5_except_error;
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1572:

     1573:         f = np.vectorize(re_replacer, otypes=[self.dtype])

      /* "pandas/internals.pyx":1573
     *                     return s
     *
     *         f = np.vectorize(re_replacer, otypes=[self.dtype])             # <<<<<<<<<<<<<<
     *
     *         try:
     */
      __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_11);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_vectorize); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_INCREF(__pyx_v_re_replacer);
      PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_re_replacer);
      __Pyx_GIVEREF(__pyx_v_re_replacer);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_12 = PyList_New(1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_12);
      PyList_SET_ITEM(__pyx_t_12, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_otypes, __pyx_t_12) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
      __pyx_t_12 = PyObject_Call(__pyx_t_2, __pyx_t_11, __pyx_t_3); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1573; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_f = __pyx_t_12;
      __pyx_t_12 = 0;

     1574:

     1575:         try:

      /* "pandas/internals.pyx":1575
     *         f = np.vectorize(re_replacer, otypes=[self.dtype])
     *
     *         try:             # <<<<<<<<<<<<<<
     *             filt = lmap(self.items.get_loc, filter)
     *         except TypeError:
     */
      {
        /*try:*/ {

     1576:             filt = lmap(self.items.get_loc, filter)

          /* "pandas/internals.pyx":1576
     *
     *         try:
     *             filt = lmap(self.items.get_loc, filter)             # <<<<<<<<<<<<<<
     *         except TypeError:
     *             filt = slice(None)
     */
          __pyx_t_12 = __Pyx_GetModuleGlobalName(__pyx_n_s_lmap); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1576; __pyx_clineno = __LINE__; goto __pyx_L18_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1576; __pyx_clineno = __LINE__; goto __pyx_L18_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1576; __pyx_clineno = __LINE__; goto __pyx_L18_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1576; __pyx_clineno = __LINE__; goto __pyx_L18_error;}
          __Pyx_GOTREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_11);
          __Pyx_GIVEREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_filter);
          PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_filter);
          __Pyx_GIVEREF(__pyx_v_filter);
          __pyx_t_11 = 0;
          __pyx_t_11 = PyObject_Call(__pyx_t_12, __pyx_t_3, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1576; __pyx_clineno = __LINE__; goto __pyx_L18_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_v_filt = __pyx_t_11;
          __pyx_t_11 = 0;
        }
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L25_try_end;
        __pyx_L18_error:;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;

     1577:         except TypeError:

        /* "pandas/internals.pyx":1577
     *         try:
     *             filt = lmap(self.items.get_loc, filter)
     *         except TypeError:             # <<<<<<<<<<<<<<
     *             filt = slice(None)
     *
     */
        __pyx_t_10 = PyErr_ExceptionMatches(__pyx_builtin_TypeError);
        if (__pyx_t_10) {
          __Pyx_AddTraceback("pandas.internals.ObjectBlock._replace_single", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_3, &__pyx_t_12) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1577; __pyx_clineno = __LINE__; goto __pyx_L20_except_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_GOTREF(__pyx_t_12);

     1578:             filt = slice(None)

          /* "pandas/internals.pyx":1578
     *             filt = lmap(self.items.get_loc, filter)
     *         except TypeError:
     *             filt = slice(None)             # <<<<<<<<<<<<<<
     *
     *         new_values[filt] = f(new_values[filt])
     */
          __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PySlice_Type))), __pyx_tuple__42, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1578; __pyx_clineno = __LINE__; goto __pyx_L20_except_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_XDECREF_SET(__pyx_v_filt, __pyx_t_2);
          __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          goto __pyx_L19_exception_handled;
        }
        goto __pyx_L20_except_error;
        __pyx_L20_except_error:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        goto __pyx_L1_error;
        __pyx_L19_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_9);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_ExceptionReset(__pyx_t_9, __pyx_t_8, __pyx_t_7);
        __pyx_L25_try_end:;
      }

      /* "pandas/internals.pyx":1578
     *             filt = lmap(self.items.get_loc, filter)
     *         except TypeError:
     *             filt = slice(None)             # <<<<<<<<<<<<<<
     *
     *         new_values[filt] = f(new_values[filt])
     */
      __pyx_tuple__42 = PyTuple_Pack(1, Py_None); if (unlikely(!__pyx_tuple__42)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__42);
      __Pyx_GIVEREF(__pyx_tuple__42);

     1579:

     1580:         new_values[filt] = f(new_values[filt])

      /* "pandas/internals.pyx":1580
     *             filt = slice(None)
     *
     *         new_values[filt] = f(new_values[filt])             # <<<<<<<<<<<<<<
     *
     *         return [self if inplace else make_block(new_values, self.items,
     */
      __pyx_t_12 = PyObject_GetItem(__pyx_v_new_values, __pyx_v_filt); if (unlikely(__pyx_t_12 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1580; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_12);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1580; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_12);
      __Pyx_GIVEREF(__pyx_t_12);
      __pyx_t_12 = 0;
      __pyx_t_12 = PyObject_Call(__pyx_v_f, __pyx_t_3, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1580; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_12);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(PyObject_SetItem(__pyx_v_new_values, __pyx_v_filt, __pyx_t_12) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1580; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;

     1581:

     1582:         return [self if inplace else make_block(new_values, self.items,

      /* "pandas/internals.pyx":1582
     *         new_values[filt] = f(new_values[filt])
     *
     *         return [self if inplace else make_block(new_values, self.items,             # <<<<<<<<<<<<<<
     *                                                 self.ref_items, fastpath=True)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_5) {
        __Pyx_INCREF(__pyx_v_self);
        __pyx_t_12 = __pyx_v_self;
      } else {
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);

        /* "pandas/internals.pyx":1582
     *         new_values[filt] = f(new_values[filt])
     *
     *         return [self if inplace else make_block(new_values, self.items,             # <<<<<<<<<<<<<<
     *                                                 self.ref_items, fastpath=True)]
     *
     */
        __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_new_values);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new_values);
        __Pyx_GIVEREF(__pyx_v_new_values);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_11);
        __Pyx_GIVEREF(__pyx_t_11);
        PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_11 = 0;
        __pyx_t_2 = 0;
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

        /* "pandas/internals.pyx":1582
     *         new_values[filt] = f(new_values[filt])
     *
     *         return [self if inplace else make_block(new_values, self.items,             # <<<<<<<<<<<<<<
     *                                                 self.ref_items, fastpath=True)]
     *
     */
        __pyx_t_11 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_12 = __pyx_t_11;
        __pyx_t_11 = 0;
      }
      __pyx_t_11 = PyList_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_11);
      PyList_SET_ITEM(__pyx_t_11, 0, __pyx_t_12);
      __Pyx_GIVEREF(__pyx_t_12);
      __pyx_t_12 = 0;
      __pyx_r = __pyx_t_11;
      __pyx_t_11 = 0;
      goto __pyx_L0;

     1583:                                                 self.ref_items, fastpath=True)]

        /* "pandas/internals.pyx":1583
     *
     *         return [self if inplace else make_block(new_values, self.items,
     *                                                 self.ref_items, fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1583; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

        /* "pandas/internals.pyx":1583
     *
     *         return [self if inplace else make_block(new_values, self.items,
     *                                                 self.ref_items, fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *
     */
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1582; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1584:

     1585:

     1586: class DatetimeBlock(Block):

      /* "pandas/internals.pyx":1586
     *
     *
     * class DatetimeBlock(Block):             # <<<<<<<<<<<<<<
     *     is_datetime = True
     *     _can_hold_na = True
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_2, __pyx_n_s_DatetimeBlock, __pyx_n_s_DatetimeBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, (PyObject *) NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1586
     *
     *
     * class DatetimeBlock(Block):             # <<<<<<<<<<<<<<
     *     is_datetime = True
     *     _can_hold_na = True
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_DatetimeBlock, __pyx_t_2, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_DatetimeBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     1587:     is_datetime = True

      /* "pandas/internals.pyx":1587
     *
     * class DatetimeBlock(Block):
     *     is_datetime = True             # <<<<<<<<<<<<<<
     *     _can_hold_na = True
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_datetime, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1588:     _can_hold_na = True

      /* "pandas/internals.pyx":1588
     * class DatetimeBlock(Block):
     *     is_datetime = True
     *     _can_hold_na = True             # <<<<<<<<<<<<<<
     *
     *     def __init__(self, values, items, ref_items, fastpath=False,
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1588; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1589:

     1590:     def __init__(self, values, items, ref_items, fastpath=False,

    /* "pandas/internals.pyx":1590
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None, **kwargs):
     *         if values.dtype != _NS_DTYPE:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_1__init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_1__init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_ref_items = 0;
      CYTHON_UNUSED PyObject *__pyx_v_fastpath = 0;
      PyObject *__pyx_v_placement = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_items,&__pyx_n_s_ref_items,&__pyx_n_s_fastpath,&__pyx_n_s_placement,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)Py_False));

      /* "pandas/internals.pyx":1590
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None, **kwargs):
     *         if values.dtype != _NS_DTYPE:
     */

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_items, PyObject *__pyx_v_ref_items, CYTHON_UNUSED PyObject *__pyx_v_fastpath, PyObject *__pyx_v_placement, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__", 0);
      __Pyx_INCREF(__pyx_v_values);

      /* "pandas/internals.pyx":1590
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None, **kwargs):
     *         if values.dtype != _NS_DTYPE:
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1590
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None, **kwargs):
     *         if values.dtype != _NS_DTYPE:
     */
      __pyx_tuple__369 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_fastpath, __pyx_n_s_placement, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__369)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__369);
      __Pyx_GIVEREF(__pyx_tuple__369);
      __pyx_codeobj__370 = (PyObject*)__Pyx_PyCode_New(6, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__369, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_init, 1590, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__370)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1590
     *     _can_hold_na = True
     *
     *     def __init__(self, values, items, ref_items, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None, **kwargs):
     *         if values.dtype != _NS_DTYPE:
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_1__init__, 0, __pyx_n_s_DatetimeBlock___init, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__370)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__371);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_init, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__371 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__371)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__371);
      __Pyx_GIVEREF(__pyx_tuple__371);

     1591:                  placement=None, **kwargs):

        /* "pandas/internals.pyx":1591
     *
     *     def __init__(self, values, items, ref_items, fastpath=False,
     *                  placement=None, **kwargs):             # <<<<<<<<<<<<<<
     *         if values.dtype != _NS_DTYPE:
     *             values = tslib.cast_to_nanoseconds(values)
     */
        values[5] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 6, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 6, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_placement);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_items = values[2];
        __pyx_v_ref_items = values[3];
        __pyx_v_fastpath = values[4];
        __pyx_v_placement = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock___init__(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_items, __pyx_v_ref_items, __pyx_v_fastpath, __pyx_v_placement, __pyx_v_kwargs);

     1592:         if values.dtype != _NS_DTYPE:

      /* "pandas/internals.pyx":1592
     *     def __init__(self, values, items, ref_items, fastpath=False,
     *                  placement=None, **kwargs):
     *         if values.dtype != _NS_DTYPE:             # <<<<<<<<<<<<<<
     *             values = tslib.cast_to_nanoseconds(values)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1592; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_NS_DTYPE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1592; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1592; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1592; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     1593:             values = tslib.cast_to_nanoseconds(values)

        /* "pandas/internals.pyx":1593
     *                  placement=None, **kwargs):
     *         if values.dtype != _NS_DTYPE:
     *             values = tslib.cast_to_nanoseconds(values)             # <<<<<<<<<<<<<<
     *
     *         super(DatetimeBlock, self).__init__(values, items, ref_items,
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1593; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_cast_to_nanoseconds); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1593; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1593; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1593; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1594:

     1595:         super(DatetimeBlock, self).__init__(values, items, ref_items,

      /* "pandas/internals.pyx":1595
     *             values = tslib.cast_to_nanoseconds(values)
     *
     *         super(DatetimeBlock, self).__init__(values, items, ref_items,             # <<<<<<<<<<<<<<
     *                                             fastpath=True, placement=placement,
     *                                             **kwargs)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_DatetimeBlock); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_self);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_builtin_super, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_init); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);

      /* "pandas/internals.pyx":1595
     *             values = tslib.cast_to_nanoseconds(values)
     *
     *         super(DatetimeBlock, self).__init__(values, items, ref_items,             # <<<<<<<<<<<<<<
     *                                             fastpath=True, placement=placement,
     *                                             **kwargs)
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     1596:                                             fastpath=True, placement=placement,

      /* "pandas/internals.pyx":1596
     *
     *         super(DatetimeBlock, self).__init__(values, items, ref_items,
     *                                             fastpath=True, placement=placement,             # <<<<<<<<<<<<<<
     *                                             **kwargs)
     *
     */
      if (unlikely(PyDict_GetItem(__pyx_t_2, __pyx_n_s_fastpath))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_fastpath); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(PyDict_GetItem(__pyx_t_2, __pyx_n_s_placement))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_placement); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1597:                                             **kwargs)

      /* "pandas/internals.pyx":1597
     *         super(DatetimeBlock, self).__init__(values, items, ref_items,
     *                                             fastpath=True, placement=placement,
     *                                             **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def _can_hold_element(self, element):
     */
      __pyx_t_2 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1595; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);

     1598:

     1599:     def _can_hold_element(self, element):

    /* "pandas/internals.pyx":1599
     *                                             **kwargs)
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_3_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_3_can_hold_element = {__Pyx_NAMESTR("_can_hold_element"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_3_can_hold_element, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_3_can_hold_element(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1599; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_can_hold_element") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1599; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_can_hold_element", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1599; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_2_can_hold_element(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_2_can_hold_element(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_element", 0);
      __Pyx_INCREF(__pyx_v_element);

      /* "pandas/internals.pyx":1599
     *                                             **kwargs)
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._can_hold_element", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_element);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1599
     *                                             **kwargs)
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_tuple__372 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__372)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__372);
      __Pyx_GIVEREF(__pyx_tuple__372);

      /* "pandas/internals.pyx":1599
     *                                             **kwargs)
     *
     *     def _can_hold_element(self, element):             # <<<<<<<<<<<<<<
     *         if is_list_like(element):
     *             element = np.array(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_3_can_hold_element, 0, __pyx_n_s_DatetimeBlock__can_hold_element, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__373)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_element, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__373 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__372, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_element, 1599, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__373)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1600:         if is_list_like(element):

      /* "pandas/internals.pyx":1600
     *
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):             # <<<<<<<<<<<<<<
     *             element = np.array(element)
     *             return element.dtype == _NS_DTYPE or element.dtype == np.int64
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_list_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_element);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_element);
      __Pyx_GIVEREF(__pyx_v_element);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     1601:             element = np.array(element)

        /* "pandas/internals.pyx":1601
     *     def _can_hold_element(self, element):
     *         if is_list_like(element):
     *             element = np.array(element)             # <<<<<<<<<<<<<<
     *             return element.dtype == _NS_DTYPE or element.dtype == np.int64
     *         return (com.is_integer(element) or
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_element);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_element);
        __Pyx_GIVEREF(__pyx_v_element);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_element, __pyx_t_1);
        __pyx_t_1 = 0;

     1602:             return element.dtype == _NS_DTYPE or element.dtype == np.int64

        /* "pandas/internals.pyx":1602
     *         if is_list_like(element):
     *             element = np.array(element)
     *             return element.dtype == _NS_DTYPE or element.dtype == np.int64             # <<<<<<<<<<<<<<
     *         return (com.is_integer(element) or
     *                 isinstance(element, datetime) or
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_element, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_NS_DTYPE); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (!__pyx_t_4) {
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_element, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_int64); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_RichCompare(__pyx_t_3, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = __pyx_t_1;
          __pyx_t_1 = 0;
        } else {
          __pyx_t_5 = __pyx_t_2;
          __pyx_t_2 = 0;
        }
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L0;
      }

     1603:         return (com.is_integer(element) or

      /* "pandas/internals.pyx":1603
     *             element = np.array(element)
     *             return element.dtype == _NS_DTYPE or element.dtype == np.int64
     *         return (com.is_integer(element) or             # <<<<<<<<<<<<<<
     *                 isinstance(element, datetime) or
     *                 isnull(element))
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_is_integer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_element);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_element);
      __Pyx_GIVEREF(__pyx_v_element);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_4) {
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1604:                 isinstance(element, datetime) or

        /* "pandas/internals.pyx":1604
     *             return element.dtype == _NS_DTYPE or element.dtype == np.int64
     *         return (com.is_integer(element) or
     *                 isinstance(element, datetime) or             # <<<<<<<<<<<<<<
     *                 isnull(element))
     *
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_datetime); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1604; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = PyObject_IsInstance(__pyx_v_element, __pyx_t_5); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1604; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1604; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1604; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (!__pyx_t_4) {
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     1605:                 isnull(element))

          /* "pandas/internals.pyx":1605
     *         return (com.is_integer(element) or
     *                 isinstance(element, datetime) or
     *                 isnull(element))             # <<<<<<<<<<<<<<
     *
     *     def _try_cast(self, element):
     */
          __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_element);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_element);
          __Pyx_GIVEREF(__pyx_v_element);
          __pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = __pyx_t_6;
          __pyx_t_6 = 0;
        } else {
          __pyx_t_3 = __pyx_t_5;
          __pyx_t_5 = 0;
        }
        __pyx_t_5 = __pyx_t_3;
        __pyx_t_3 = 0;
      } else {
        __pyx_t_5 = __pyx_t_1;
        __pyx_t_1 = 0;
      }
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     1606:

     1607:     def _try_cast(self, element):

    /* "pandas/internals.pyx":1607
     *                 isnull(element))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_5_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_5_try_cast = {__Pyx_NAMESTR("_try_cast"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_5_try_cast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_5_try_cast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_element = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_element,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_element)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1607; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1607; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_element = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1607; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_4_try_cast(__pyx_self, __pyx_v_self, __pyx_v_element);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_4_try_cast(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_element) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast", 0);

      /* "pandas/internals.pyx":1607
     *                 isnull(element))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1607
     *                 isnull(element))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */
      __pyx_tuple__374 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_element); if (unlikely(!__pyx_tuple__374)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__374);
      __Pyx_GIVEREF(__pyx_tuple__374);

      /* "pandas/internals.pyx":1607
     *                 isnull(element))
     *
     *     def _try_cast(self, element):             # <<<<<<<<<<<<<<
     *         try:
     *             return int(element)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_5_try_cast, 0, __pyx_n_s_DatetimeBlock__try_cast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__375)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__375 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__374, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast, 1607, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__375)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1608:         try:

      /* "pandas/internals.pyx":1608
     *
     *     def _try_cast(self, element):
     *         try:             # <<<<<<<<<<<<<<
     *             return int(element)
     *         except:
     */
      {
        /*try:*/ {

     1609:             return int(element)

          /* "pandas/internals.pyx":1609
     *     def _try_cast(self, element):
     *         try:
     *             return int(element)             # <<<<<<<<<<<<<<
     *         except:
     *             return element
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = PyNumber_Int(__pyx_v_element); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1609; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_r = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

     1610:         except:

        /* "pandas/internals.pyx":1610
     *         try:
     *             return int(element)
     *         except:             # <<<<<<<<<<<<<<
     *             return element
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_cast", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1610; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_6);

     1611:             return element

          /* "pandas/internals.pyx":1611
     *             return int(element)
     *         except:
     *             return element             # <<<<<<<<<<<<<<
     *
     *     def _try_operate(self, values):
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_element);
          __pyx_r = __pyx_v_element;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1612:

     1613:     def _try_operate(self, values):

    /* "pandas/internals.pyx":1613
     *             return element
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_7_try_operate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_13DatetimeBlock_6_try_operate[] = " return a version to operate on ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_7_try_operate = {__Pyx_NAMESTR("_try_operate"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_7_try_operate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_13DatetimeBlock_6_try_operate)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_7_try_operate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_operate (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_operate", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1613; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_operate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1613; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_operate", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1613; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_operate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_6_try_operate(__pyx_self, __pyx_v_self, __pyx_v_values);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_6_try_operate(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_values) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_operate", 0);

      /* "pandas/internals.pyx":1613
     *             return element
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_operate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1613
     *             return element
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */
      __pyx_tuple__376 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_values); if (unlikely(!__pyx_tuple__376)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__376);
      __Pyx_GIVEREF(__pyx_tuple__376);

      /* "pandas/internals.pyx":1613
     *             return element
     *
     *     def _try_operate(self, values):             # <<<<<<<<<<<<<<
     *         """ return a version to operate on """
     *         return values.view('i8')
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_7_try_operate, 0, __pyx_n_s_DatetimeBlock__try_operate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__377)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_operate, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__377 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__376, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_operate, 1613, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__377)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1614:         """ return a version to operate on """

     1615:         return values.view('i8')

      /* "pandas/internals.pyx":1615
     *     def _try_operate(self, values):
     *         """ return a version to operate on """
     *         return values.view('i8')             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_args(self, values, other):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_view); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_tuple__43, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":1615
     *     def _try_operate(self, values):
     *         """ return a version to operate on """
     *         return values.view('i8')             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_args(self, values, other):
     */
      __pyx_tuple__43 = PyTuple_Pack(1, __pyx_n_s_i8); if (unlikely(!__pyx_tuple__43)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__43);
      __Pyx_GIVEREF(__pyx_tuple__43);

     1616:

     1617:     def _try_coerce_args(self, values, other):

    /* "pandas/internals.pyx":1617
     *         return values.view('i8')
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to integer
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_9_try_coerce_args(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_13DatetimeBlock_8_try_coerce_args[] = " provide coercion to our input arguments\n            we are going to compare vs i8, so coerce to integer\n            values is always ndarra like, other may not be ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_9_try_coerce_args = {__Pyx_NAMESTR("_try_coerce_args"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_9_try_coerce_args, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_13DatetimeBlock_8_try_coerce_args)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_9_try_coerce_args(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_args (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_other,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_coerce_args") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_other = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_coerce_args", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_coerce_args", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_8_try_coerce_args(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_8_try_coerce_args(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_other) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_args", 0);
      __Pyx_INCREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_other);

      /* "pandas/internals.pyx":1617
     *         return values.view('i8')
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to integer
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_coerce_args", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_other);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1617
     *         return values.view('i8')
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to integer
     */
      __pyx_tuple__378 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_other); if (unlikely(!__pyx_tuple__378)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__378);
      __Pyx_GIVEREF(__pyx_tuple__378);

      /* "pandas/internals.pyx":1617
     *         return values.view('i8')
     *
     *     def _try_coerce_args(self, values, other):             # <<<<<<<<<<<<<<
     *         """ provide coercion to our input arguments
     *             we are going to compare vs i8, so coerce to integer
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_9_try_coerce_args, 0, __pyx_n_s_DatetimeBlock__try_coerce_args, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__379)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_coerce_args, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__379 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__378, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_coerce_args, 1617, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__379)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1618:         """ provide coercion to our input arguments

     1619:             we are going to compare vs i8, so coerce to integer

     1620:             values is always ndarra like, other may not be """

     1621:         values = values.view('i8')

      /* "pandas/internals.pyx":1621
     *             we are going to compare vs i8, so coerce to integer
     *             values is always ndarra like, other may not be """
     *         values = values.view('i8')             # <<<<<<<<<<<<<<
     *         if _is_null_datelike_scalar(other):
     *             other = tslib.iNaT
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_view); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1621; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_tuple__44, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1621; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_2);
      __pyx_t_2 = 0;

      /* "pandas/internals.pyx":1621
     *             we are going to compare vs i8, so coerce to integer
     *             values is always ndarra like, other may not be """
     *         values = values.view('i8')             # <<<<<<<<<<<<<<
     *         if _is_null_datelike_scalar(other):
     *             other = tslib.iNaT
     */
      __pyx_tuple__44 = PyTuple_Pack(1, __pyx_n_s_i8); if (unlikely(!__pyx_tuple__44)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1621; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__44);
      __Pyx_GIVEREF(__pyx_tuple__44);

     1622:         if _is_null_datelike_scalar(other):

      /* "pandas/internals.pyx":1622
     *             values is always ndarra like, other may not be """
     *         values = values.view('i8')
     *         if _is_null_datelike_scalar(other):             # <<<<<<<<<<<<<<
     *             other = tslib.iNaT
     *         elif isinstance(other, datetime):
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_is_null_datelike_scalar); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     1623:             other = tslib.iNaT

        /* "pandas/internals.pyx":1623
     *         values = values.view('i8')
     *         if _is_null_datelike_scalar(other):
     *             other = tslib.iNaT             # <<<<<<<<<<<<<<
     *         elif isinstance(other, datetime):
     *             other = lib.Timestamp(other).asm8.view('i8')
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_iNaT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }

     1624:         elif isinstance(other, datetime):

      /* "pandas/internals.pyx":1624
     *         if _is_null_datelike_scalar(other):
     *             other = tslib.iNaT
     *         elif isinstance(other, datetime):             # <<<<<<<<<<<<<<
     *             other = lib.Timestamp(other).asm8.view('i8')
     *         else:
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_datetime); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyObject_IsInstance(__pyx_v_other, __pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     1625:             other = lib.Timestamp(other).asm8.view('i8')

        /* "pandas/internals.pyx":1625
     *             other = tslib.iNaT
     *         elif isinstance(other, datetime):
     *             other = lib.Timestamp(other).asm8.view('i8')             # <<<<<<<<<<<<<<
     *         else:
     *             other = other.view('i8')
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_lib); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_Timestamp); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_other);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_other);
        __Pyx_GIVEREF(__pyx_v_other);
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_asm8); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_tuple__45, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

      /* "pandas/internals.pyx":1625
     *             other = tslib.iNaT
     *         elif isinstance(other, datetime):
     *             other = lib.Timestamp(other).asm8.view('i8')             # <<<<<<<<<<<<<<
     *         else:
     *             other = other.view('i8')
     */
      __pyx_tuple__45 = PyTuple_Pack(1, __pyx_n_s_i8); if (unlikely(!__pyx_tuple__45)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1625; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__45);
      __Pyx_GIVEREF(__pyx_tuple__45);

     1626:         else:

     1627:             other = other.view('i8')

        /* "pandas/internals.pyx":1627
     *             other = lib.Timestamp(other).asm8.view('i8')
     *         else:
     *             other = other.view('i8')             # <<<<<<<<<<<<<<
     *
     *         return values, other
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_view); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_tuple__46, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_2);
        __pyx_t_2 = 0;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":1627
     *             other = lib.Timestamp(other).asm8.view('i8')
     *         else:
     *             other = other.view('i8')             # <<<<<<<<<<<<<<
     *
     *         return values, other
     */
      __pyx_tuple__46 = PyTuple_Pack(1, __pyx_n_s_i8); if (unlikely(!__pyx_tuple__46)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__46);
      __Pyx_GIVEREF(__pyx_tuple__46);

     1628:

     1629:         return values, other

      /* "pandas/internals.pyx":1629
     *             other = other.view('i8')
     *
     *         return values, other             # <<<<<<<<<<<<<<
     *
     *     def _try_coerce_result(self, result):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1629; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1630:

     1631:     def _try_coerce_result(self, result):

    /* "pandas/internals.pyx":1631
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         if isinstance(result, np.ndarray):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_11_try_coerce_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_13DatetimeBlock_10_try_coerce_result[] = " reverse of try_coerce_args ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_11_try_coerce_result = {__Pyx_NAMESTR("_try_coerce_result"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_11_try_coerce_result, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_13DatetimeBlock_10_try_coerce_result)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_11_try_coerce_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_result = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_result (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_result,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_coerce_result", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1631; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_coerce_result") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1631; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_result = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_coerce_result", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1631; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_coerce_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_10_try_coerce_result(__pyx_self, __pyx_v_self, __pyx_v_result);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_10_try_coerce_result(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_result) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_coerce_result", 0);
      __Pyx_INCREF(__pyx_v_result);

      /* "pandas/internals.pyx":1631
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         if isinstance(result, np.ndarray):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_coerce_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1631
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         if isinstance(result, np.ndarray):
     */
      __pyx_tuple__380 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_result); if (unlikely(!__pyx_tuple__380)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__380);
      __Pyx_GIVEREF(__pyx_tuple__380);

      /* "pandas/internals.pyx":1631
     *         return values, other
     *
     *     def _try_coerce_result(self, result):             # <<<<<<<<<<<<<<
     *         """ reverse of try_coerce_args """
     *         if isinstance(result, np.ndarray):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_11_try_coerce_result, 0, __pyx_n_s_DatetimeBlock__try_coerce_result, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__381)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_coerce_result, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__381 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__380, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_coerce_result, 1631, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__381)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1632:         """ reverse of try_coerce_args """

     1633:         if isinstance(result, np.ndarray):

      /* "pandas/internals.pyx":1633
     *     def _try_coerce_result(self, result):
     *         """ reverse of try_coerce_args """
     *         if isinstance(result, np.ndarray):             # <<<<<<<<<<<<<<
     *             if result.dtype == 'i8':
     *                 result = tslib.array_to_datetime(
     */
      __pyx_t_1 = __Pyx_TypeCheck(__pyx_v_result, ((PyObject*)__pyx_ptype_5numpy_ndarray));
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1634:             if result.dtype == 'i8':

        /* "pandas/internals.pyx":1634
     *         """ reverse of try_coerce_args """
     *         if isinstance(result, np.ndarray):
     *             if result.dtype == 'i8':             # <<<<<<<<<<<<<<
     *                 result = tslib.array_to_datetime(
     *                     result.astype(object).ravel()).reshape(result.shape)
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_3, __pyx_n_s_i8, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_2) {

     1635:                 result = tslib.array_to_datetime(

          /* "pandas/internals.pyx":1635
     *         if isinstance(result, np.ndarray):
     *             if result.dtype == 'i8':
     *                 result = tslib.array_to_datetime(             # <<<<<<<<<<<<<<
     *                     result.astype(object).ravel()).reshape(result.shape)
     *             elif result.dtype.kind in ['i', 'f', 'O']:
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array_to_datetime); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

          /* "pandas/internals.pyx":1635
     *         if isinstance(result, np.ndarray):
     *             if result.dtype == 'i8':
     *                 result = tslib.array_to_datetime(             # <<<<<<<<<<<<<<
     *                     result.astype(object).ravel()).reshape(result.shape)
     *             elif result.dtype.kind in ['i', 'f', 'O']:
     */
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     1636:                     result.astype(object).ravel()).reshape(result.shape)

          /* "pandas/internals.pyx":1636
     *             if result.dtype == 'i8':
     *                 result = tslib.array_to_datetime(
     *                     result.astype(object).ravel()).reshape(result.shape)             # <<<<<<<<<<<<<<
     *             elif result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('M8[ns]')
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_astype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_builtin_object);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_builtin_object);
          __Pyx_GIVEREF(__pyx_builtin_object);
          __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ravel); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

          /* "pandas/internals.pyx":1636
     *             if result.dtype == 'i8':
     *                 result = tslib.array_to_datetime(
     *                     result.astype(object).ravel()).reshape(result.shape)             # <<<<<<<<<<<<<<
     *             elif result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('M8[ns]')
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_reshape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_shape); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L4;
        }

     1637:             elif result.dtype.kind in ['i', 'f', 'O']:

        /* "pandas/internals.pyx":1637
     *                 result = tslib.array_to_datetime(
     *                     result.astype(object).ravel()).reshape(result.shape)
     *             elif result.dtype.kind in ['i', 'f', 'O']:             # <<<<<<<<<<<<<<
     *                 result = result.astype('M8[ns]')
     *         elif isinstance(result, (np.integer, np.datetime64)):
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_dtype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_kind); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_i, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (!((int)__pyx_t_2)) {
          __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_f, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_1 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_7 = ((int)__pyx_t_1);
        } else {
          __pyx_t_7 = ((int)__pyx_t_2);
        }
        if (!__pyx_t_7) {
          __pyx_t_6 = PyObject_RichCompare(__pyx_t_4, __pyx_n_s_O, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_1 = ((int)__pyx_t_2);
        } else {
          __pyx_t_1 = __pyx_t_7;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_7 = (__pyx_t_1 != 0);
        if (__pyx_t_7) {

     1638:                 result = result.astype('M8[ns]')

          /* "pandas/internals.pyx":1638
     *                     result.astype(object).ravel()).reshape(result.shape)
     *             elif result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('M8[ns]')             # <<<<<<<<<<<<<<
     *         elif isinstance(result, (np.integer, np.datetime64)):
     *             result = lib.Timestamp(result)
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_astype); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_tuple__47, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L4;
        }
        __pyx_L4:;
        goto __pyx_L3;
      }

      /* "pandas/internals.pyx":1638
     *                     result.astype(object).ravel()).reshape(result.shape)
     *             elif result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('M8[ns]')             # <<<<<<<<<<<<<<
     *         elif isinstance(result, (np.integer, np.datetime64)):
     *             result = lib.Timestamp(result)
     */
      __pyx_tuple__47 = PyTuple_Pack(1, __pyx_kp_s_M8_ns); if (unlikely(!__pyx_tuple__47)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__47);
      __Pyx_GIVEREF(__pyx_tuple__47);

     1639:         elif isinstance(result, (np.integer, np.datetime64)):

      /* "pandas/internals.pyx":1639
     *             elif result.dtype.kind in ['i', 'f', 'O']:
     *                 result = result.astype('M8[ns]')
     *         elif isinstance(result, (np.integer, np.datetime64)):             # <<<<<<<<<<<<<<
     *             result = lib.Timestamp(result)
     *         return result
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_integer); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_datetime64); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_4 = 0;
      __pyx_t_5 = 0;
      __pyx_t_7 = PyObject_IsInstance(__pyx_v_result, __pyx_t_6); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_1 = (__pyx_t_7 != 0);
      if (__pyx_t_1) {

     1640:             result = lib.Timestamp(result)

        /* "pandas/internals.pyx":1640
     *                 result = result.astype('M8[ns]')
     *         elif isinstance(result, (np.integer, np.datetime64)):
     *             result = lib.Timestamp(result)             # <<<<<<<<<<<<<<
     *         return result
     *
     */
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_lib); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_Timestamp); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1641:         return result

      /* "pandas/internals.pyx":1641
     *         elif isinstance(result, (np.integer, np.datetime64)):
     *             result = lib.Timestamp(result)
     *         return result             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     1642:

     1643:     @property

      /* "pandas/internals.pyx":1643
     *         return result
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def fill_value(self):
     *         return tslib.iNaT
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1644:     def fill_value(self):

    /* "pandas/internals.pyx":1644
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_13fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_13fill_value = {__Pyx_NAMESTR("fill_value"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_13fill_value, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_13fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_12fill_value(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_12fill_value(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value", 0);

      /* "pandas/internals.pyx":1644
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.fill_value", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1644
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */
      __pyx_tuple__382 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__382)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__382);
      __Pyx_GIVEREF(__pyx_tuple__382);

      /* "pandas/internals.pyx":1644
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return tslib.iNaT
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_13fill_value, 0, __pyx_n_s_DatetimeBlock_fill_value, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__383)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__383 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__382, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fill_value, 1644, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__383)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1645:         return tslib.iNaT

      /* "pandas/internals.pyx":1645
     *     @property
     *     def fill_value(self):
     *         return tslib.iNaT             # <<<<<<<<<<<<<<
     *
     *     def _try_fill(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_iNaT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1646:

     1647:     def _try_fill(self, value):

    /* "pandas/internals.pyx":1647
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_15_try_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_13DatetimeBlock_14_try_fill[] = " if we are a NaT, return the actual fill value ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_15_try_fill = {__Pyx_NAMESTR("_try_fill"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_15_try_fill, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_13DatetimeBlock_14_try_fill)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_15_try_fill(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_fill (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_fill", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1647; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_fill") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1647; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_fill", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1647; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_fill", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_14_try_fill(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_14_try_fill(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_fill", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":1647
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock._try_fill", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1647
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */
      __pyx_tuple__384 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__384)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__384);
      __Pyx_GIVEREF(__pyx_tuple__384);

      /* "pandas/internals.pyx":1647
     *         return tslib.iNaT
     *
     *     def _try_fill(self, value):             # <<<<<<<<<<<<<<
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_15_try_fill, 0, __pyx_n_s_DatetimeBlock__try_fill, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__385)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_fill, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__385 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__384, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_fill, 1647, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__385)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1648:         """ if we are a NaT, return the actual fill value """

     1649:         if isinstance(value, type(tslib.NaT)) or isnull(value):

      /* "pandas/internals.pyx":1649
     *     def _try_fill(self, value):
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):             # <<<<<<<<<<<<<<
     *             value = tslib.iNaT
     *         return value
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_NaT); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = PyObject_IsInstance(__pyx_v_value, ((PyObject *)Py_TYPE(__pyx_t_2))); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (!__pyx_t_3) {
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_3;
      }
      if (__pyx_t_6) {

     1650:             value = tslib.iNaT

        /* "pandas/internals.pyx":1650
     *         """ if we are a NaT, return the actual fill value """
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     *             value = tslib.iNaT             # <<<<<<<<<<<<<<
     *         return value
     *
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1650; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_iNaT); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1650; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1651:         return value

      /* "pandas/internals.pyx":1651
     *         if isinstance(value, type(tslib.NaT)) or isnull(value):
     *             value = tslib.iNaT
     *         return value             # <<<<<<<<<<<<<<
     *
     *     def fillna(self, value, inplace=False, downcast=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_value);
      __pyx_r = __pyx_v_value;
      goto __pyx_L0;

     1652:

     1653:     def fillna(self, value, inplace=False, downcast=None):

    /* "pandas/internals.pyx":1653
     *         return value
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # straight putmask here
     *         values = self.values if inplace else self.values.copy()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_17fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_17fillna = {__Pyx_NAMESTR("fillna"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_17fillna, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_17fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_inplace = 0;
      CYTHON_UNUSED PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,&__pyx_n_s_inplace,&__pyx_n_s_downcast,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("fillna", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "fillna") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
        __pyx_v_inplace = values[2];
        __pyx_v_downcast = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("fillna", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_16fillna(__pyx_self, __pyx_v_self, __pyx_v_value, __pyx_v_inplace, __pyx_v_downcast);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_16fillna(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value, PyObject *__pyx_v_inplace, CYTHON_UNUSED PyObject *__pyx_v_downcast) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":1653
     *         return value
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # straight putmask here
     *         values = self.values if inplace else self.values.copy()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1653
     *         return value
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # straight putmask here
     *         values = self.values if inplace else self.values.copy()
     */
      __pyx_tuple__386 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_value, __pyx_n_s_inplace, __pyx_n_s_downcast, __pyx_n_s_values, __pyx_n_s_mask); if (unlikely(!__pyx_tuple__386)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__386);
      __Pyx_GIVEREF(__pyx_tuple__386);
      __pyx_codeobj__387 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__386, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fillna, 1653, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__387)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1653
     *         return value
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # straight putmask here
     *         values = self.values if inplace else self.values.copy()
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_17fillna, 0, __pyx_n_s_DatetimeBlock_fillna, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__387)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__388);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fillna, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__388 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__388)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1653; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__388);
      __Pyx_GIVEREF(__pyx_tuple__388);

     1654:         # straight putmask here

     1655:         values = self.values if inplace else self.values.copy()

      /* "pandas/internals.pyx":1655
     *     def fillna(self, value, inplace=False, downcast=None):
     *         # straight putmask here
     *         values = self.values if inplace else self.values.copy()             # <<<<<<<<<<<<<<
     *         mask = com.isnull(self.values)
     *         value = self._try_fill(value)
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1655; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1655; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      } else {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1655; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1655; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1655; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_1 = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1656:         mask = com.isnull(self.values)

      /* "pandas/internals.pyx":1656
     *         # straight putmask here
     *         values = self.values if inplace else self.values.copy()
     *         mask = com.isnull(self.values)             # <<<<<<<<<<<<<<
     *         value = self._try_fill(value)
     *         np.putmask(values, mask, value)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1656; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_isnull); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1656; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1656; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1656; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1656; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_mask = __pyx_t_1;
      __pyx_t_1 = 0;

     1657:         value = self._try_fill(value)

      /* "pandas/internals.pyx":1657
     *         values = self.values if inplace else self.values.copy()
     *         mask = com.isnull(self.values)
     *         value = self._try_fill(value)             # <<<<<<<<<<<<<<
     *         np.putmask(values, mask, value)
     *         return [self if inplace else
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_try_fill); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1657; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_3);
      __pyx_t_3 = 0;

     1658:         np.putmask(values, mask, value)

      /* "pandas/internals.pyx":1658
     *         mask = com.isnull(self.values)
     *         value = self._try_fill(value)
     *         np.putmask(values, mask, value)             # <<<<<<<<<<<<<<
     *         return [self if inplace else
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1658; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_putmask); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1658; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1658; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_mask);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_mask);
      __Pyx_GIVEREF(__pyx_v_mask);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1658; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1659:         return [self if inplace else

      /* "pandas/internals.pyx":1659
     *         value = self._try_fill(value)
     *         np.putmask(values, mask, value)
     *         return [self if inplace else             # <<<<<<<<<<<<<<
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __Pyx_INCREF(__pyx_v_self);
        __pyx_t_1 = __pyx_v_self;
      } else {

      /* "pandas/internals.pyx":1659
     *         value = self._try_fill(value)
     *         np.putmask(values, mask, value)
     *         return [self if inplace else             # <<<<<<<<<<<<<<
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     */
      __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     1660:                 make_block(values, self.items, self.ref_items, fastpath=True)]

        /* "pandas/internals.pyx":1660
     *         np.putmask(values, mask, value)
     *         return [self if inplace else
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *     def to_native_types(self, slicer=None, na_rep=None, date_format=None,
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_4 = 0;
        __pyx_t_5 = 0;
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_1 = __pyx_t_4;
        __pyx_t_4 = 0;
      }

     1661:

     1662:     def to_native_types(self, slicer=None, na_rep=None, date_format=None,

    /* "pandas/internals.pyx":1662
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     *     def to_native_types(self, slicer=None, na_rep=None, date_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_19to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_13DatetimeBlock_18to_native_types[] = " convert to our native types format, slicing if desired ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_19to_native_types = {__Pyx_NAMESTR("to_native_types"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_19to_native_types, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_13DatetimeBlock_18to_native_types)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_19to_native_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slicer = 0;
      PyObject *__pyx_v_na_rep = 0;
      PyObject *__pyx_v_date_format = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slicer,&__pyx_n_s_na_rep,&__pyx_n_s_date_format,0};
        PyObject* values[4] = {0,0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slicer);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_na_rep);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_date_format);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "to_native_types") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1662; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_slicer = values[1];
        __pyx_v_na_rep = values[2];
        __pyx_v_date_format = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("to_native_types", 0, 1, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1662; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_18to_native_types(__pyx_self, __pyx_v_self, __pyx_v_slicer, __pyx_v_na_rep, __pyx_v_date_format, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":1662
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     *     def to_native_types(self, slicer=None, na_rep=None, date_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_18to_native_types(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slicer, PyObject *__pyx_v_na_rep, PyObject *__pyx_v_date_format, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_6_to_native_types *__pyx_cur_scope;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_rvalues = NULL;
      PyObject *__pyx_v_imask = NULL;
      PyObject *__pyx_v_date_formatter = NULL;
      PyObject *__pyx_v_val = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("to_native_types", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_6_to_native_types *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_6_to_native_types(__pyx_ptype_6pandas_9internals___pyx_scope_struct_6_to_native_types, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_date_format = __pyx_v_date_format;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_date_format);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_date_format);
      __Pyx_INCREF(__pyx_v_na_rep);

      /* "pandas/internals.pyx":1662
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     *     def to_native_types(self, slicer=None, na_rep=None, date_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.to_native_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_rvalues);
      __Pyx_XDECREF(__pyx_v_imask);
      __Pyx_XDECREF(__pyx_v_date_formatter);
      __Pyx_XDECREF(__pyx_v_val);
      __Pyx_XDECREF(__pyx_v_na_rep);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1662
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     *     def to_native_types(self, slicer=None, na_rep=None, date_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */
      __pyx_tuple__389 = PyTuple_Pack(12, __pyx_n_s_self, __pyx_n_s_slicer, __pyx_n_s_na_rep, __pyx_n_s_date_format, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_values, __pyx_n_s_mask, __pyx_n_s_rvalues, __pyx_n_s_imask, __pyx_n_s_date_formatter, __pyx_n_s_val); if (unlikely(!__pyx_tuple__389)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1662; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__389);
      __Pyx_GIVEREF(__pyx_tuple__389);
      __pyx_codeobj__390 = (PyObject*)__Pyx_PyCode_New(4, 0, 12, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__389, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_to_native_types, 1662, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__390)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1662; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1662
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     *     def to_native_types(self, slicer=None, na_rep=None, date_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_19to_native_types, 0, __pyx_n_s_DatetimeBlock_to_native_types, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__390)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1662; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__391);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_to_native_types, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1662; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__391 = PyTuple_Pack(3, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__391)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1662; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__391);
      __Pyx_GIVEREF(__pyx_tuple__391);

    /* "pandas/internals.pyx":1662
     *                 make_block(values, self.items, self.ref_items, fastpath=True)]
     *
     *     def to_native_types(self, slicer=None, na_rep=None, date_format=None,             # <<<<<<<<<<<<<<
     *                         **kwargs):
     *         """ convert to our native types format, slicing if desired """
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_6_to_native_types {
      PyObject_HEAD
      PyObject *__pyx_v_date_format;
    };

     1663:                         **kwargs):

     1664:         """ convert to our native types format, slicing if desired """

     1665:

     1666:         values = self.values

      /* "pandas/internals.pyx":1666
     *         """ convert to our native types format, slicing if desired """
     *
     *         values = self.values             # <<<<<<<<<<<<<<
     *         if slicer is not None:
     *             values = values[:, slicer]
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1666; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1667:         if slicer is not None:

      /* "pandas/internals.pyx":1667
     *
     *         values = self.values
     *         if slicer is not None:             # <<<<<<<<<<<<<<
     *             values = values[:, slicer]
     *         mask = isnull(values)
     */
      __pyx_t_2 = (__pyx_v_slicer != Py_None);
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     1668:             values = values[:, slicer]

        /* "pandas/internals.pyx":1668
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         mask = isnull(values)
     *
     */
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_slice__48);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_slice__48);
        __Pyx_GIVEREF(__pyx_slice__48);
        __Pyx_INCREF(__pyx_v_slicer);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_slicer);
        __Pyx_GIVEREF(__pyx_v_slicer);
        __pyx_t_4 = PyObject_GetItem(__pyx_v_values, __pyx_t_1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1668; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":1668
     *         values = self.values
     *         if slicer is not None:
     *             values = values[:, slicer]             # <<<<<<<<<<<<<<
     *         mask = isnull(values)
     *
     */
      __pyx_slice__48 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__48)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__48);
      __Pyx_GIVEREF(__pyx_slice__48);

     1669:         mask = isnull(values)

      /* "pandas/internals.pyx":1669
     *         if slicer is not None:
     *             values = values[:, slicer]
     *         mask = isnull(values)             # <<<<<<<<<<<<<<
     *
     *         rvalues = np.empty(values.shape, dtype=object)
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1669; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1669; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1669; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_mask = __pyx_t_5;
      __pyx_t_5 = 0;

     1670:

     1671:         rvalues = np.empty(values.shape, dtype=object)

      /* "pandas/internals.pyx":1671
     *         mask = isnull(values)
     *
     *         rvalues = np.empty(values.shape, dtype=object)             # <<<<<<<<<<<<<<
     *         if na_rep is None:
     *             na_rep = 'NaT'
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1671; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_empty); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1671; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1671; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1671; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1671; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1671; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1671; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_rvalues = __pyx_t_6;
      __pyx_t_6 = 0;

     1672:         if na_rep is None:

      /* "pandas/internals.pyx":1672
     *
     *         rvalues = np.empty(values.shape, dtype=object)
     *         if na_rep is None:             # <<<<<<<<<<<<<<
     *             na_rep = 'NaT'
     *         rvalues[mask] = na_rep
     */
      __pyx_t_3 = (__pyx_v_na_rep == Py_None);
      __pyx_t_2 = (__pyx_t_3 != 0);
      if (__pyx_t_2) {

     1673:             na_rep = 'NaT'

        /* "pandas/internals.pyx":1673
     *         rvalues = np.empty(values.shape, dtype=object)
     *         if na_rep is None:
     *             na_rep = 'NaT'             # <<<<<<<<<<<<<<
     *         rvalues[mask] = na_rep
     *         imask = (-mask).ravel()
     */
        __Pyx_INCREF(__pyx_n_s_NaT);
        __Pyx_DECREF_SET(__pyx_v_na_rep, __pyx_n_s_NaT);
        goto __pyx_L4;
      }
      __pyx_L4:;

     1674:         rvalues[mask] = na_rep

      /* "pandas/internals.pyx":1674
     *         if na_rep is None:
     *             na_rep = 'NaT'
     *         rvalues[mask] = na_rep             # <<<<<<<<<<<<<<
     *         imask = (-mask).ravel()
     *
     */
      if (unlikely(PyObject_SetItem(__pyx_v_rvalues, __pyx_v_mask, __pyx_v_na_rep) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1674; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1675:         imask = (-mask).ravel()

      /* "pandas/internals.pyx":1675
     *             na_rep = 'NaT'
     *         rvalues[mask] = na_rep
     *         imask = (-mask).ravel()             # <<<<<<<<<<<<<<
     *
     *         if date_format is None:
     */
      __pyx_t_6 = PyNumber_Negative(__pyx_v_mask); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1675; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_ravel); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1675; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1675; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_imask = __pyx_t_6;
      __pyx_t_6 = 0;

     1676:

     1677:         if date_format is None:

      /* "pandas/internals.pyx":1677
     *         imask = (-mask).ravel()
     *
     *         if date_format is None:             # <<<<<<<<<<<<<<
     *             date_formatter = lambda x: Timestamp(x)._repr_base
     *         else:
     */
      __pyx_t_2 = (__pyx_cur_scope->__pyx_v_date_format == Py_None);
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     1678:             date_formatter = lambda x: Timestamp(x)._repr_base

    /* "pandas/internals.pyx":1678
     *
     *         if date_format is None:
     *             date_formatter = lambda x: Timestamp(x)._repr_base             # <<<<<<<<<<<<<<
     *         else:
     *             date_formatter = lambda x: Timestamp(x).strftime(date_format)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_15to_native_types_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_15to_native_types_lambda5 = {__Pyx_NAMESTR("lambda5"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_15to_native_types_lambda5, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_15to_native_types_lambda5(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda5 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda5(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda5(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda5", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Timestamp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_x);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_x);
      __Pyx_GIVEREF(__pyx_v_x);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_repr_base); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.to_native_types.lambda5", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

        /* "pandas/internals.pyx":1678
     *
     *         if date_format is None:
     *             date_formatter = lambda x: Timestamp(x)._repr_base             # <<<<<<<<<<<<<<
     *         else:
     *             date_formatter = lambda x: Timestamp(x).strftime(date_format)
     */
        __pyx_t_6 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_15to_native_types_lambda5, 0, __pyx_n_s_DatetimeBlock_to_native_types_lo, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_v_date_formatter = __pyx_t_6;
        __pyx_t_6 = 0;
        goto __pyx_L5;
      }
      /*else*/ {

     1679:         else:

     1680:             date_formatter = lambda x: Timestamp(x).strftime(date_format)

    /* "pandas/internals.pyx":1680
     *             date_formatter = lambda x: Timestamp(x)._repr_base
     *         else:
     *             date_formatter = lambda x: Timestamp(x).strftime(date_format)             # <<<<<<<<<<<<<<
     *
     *         rvalues.flat[imask] = np.array([date_formatter(val) for val in
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_15to_native_types_1lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_15to_native_types_1lambda6 = {__Pyx_NAMESTR("lambda6"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_15to_native_types_1lambda6, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_15to_native_types_1lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda6 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda6(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda6(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_6_to_native_types *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_6_to_native_types *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda6", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_6_to_native_types *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Timestamp); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_x);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_x);
      __Pyx_GIVEREF(__pyx_v_x);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_strftime); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (unlikely(!__pyx_cur_scope->__pyx_v_date_format)) { __Pyx_RaiseClosureNameError("date_format"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_date_format);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_cur_scope->__pyx_v_date_format);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_date_format);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.to_native_types.lambda6", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

        /* "pandas/internals.pyx":1680
     *             date_formatter = lambda x: Timestamp(x)._repr_base
     *         else:
     *             date_formatter = lambda x: Timestamp(x).strftime(date_format)             # <<<<<<<<<<<<<<
     *
     *         rvalues.flat[imask] = np.array([date_formatter(val) for val in
     */
        __pyx_t_6 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_15to_native_types_1lambda6, 0, __pyx_n_s_DatetimeBlock_to_native_types_lo, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_v_date_formatter = __pyx_t_6;
        __pyx_t_6 = 0;
      }
      __pyx_L5:;

     1681:

     1682:         rvalues.flat[imask] = np.array([date_formatter(val) for val in

      /* "pandas/internals.pyx":1682
     *             date_formatter = lambda x: Timestamp(x).strftime(date_format)
     *
     *         rvalues.flat[imask] = np.array([date_formatter(val) for val in             # <<<<<<<<<<<<<<
     *                                         values.ravel()[imask]], dtype=object)
     *
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_array); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);

        /* "pandas/internals.pyx":1682
     *             date_formatter = lambda x: Timestamp(x).strftime(date_format)
     *
     *         rvalues.flat[imask] = np.array([date_formatter(val) for val in             # <<<<<<<<<<<<<<
     *                                         values.ravel()[imask]], dtype=object)
     *
     */
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_val);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_val);
        __Pyx_GIVEREF(__pyx_v_val);
        __pyx_t_9 = PyObject_Call(__pyx_v_date_formatter, __pyx_t_4, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_6, (PyObject*)__pyx_t_9))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);

      /* "pandas/internals.pyx":1682
     *             date_formatter = lambda x: Timestamp(x).strftime(date_format)
     *
     *         rvalues.flat[imask] = np.array([date_formatter(val) for val in             # <<<<<<<<<<<<<<
     *                                         values.ravel()[imask]], dtype=object)
     *
     */
      __pyx_t_9 = PyObject_Call(__pyx_t_5, __pyx_t_1, __pyx_t_6); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_rvalues, __pyx_n_s_flat); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      if (unlikely(PyObject_SetItem(__pyx_t_6, __pyx_v_imask, __pyx_t_9) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

     1683:                                         values.ravel()[imask]], dtype=object)

      /* "pandas/internals.pyx":1683
     *
     *         rvalues.flat[imask] = np.array([date_formatter(val) for val in
     *                                         values.ravel()[imask]], dtype=object)             # <<<<<<<<<<<<<<
     *
     *         return rvalues.tolist()
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ravel); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_GetItem(__pyx_t_1, __pyx_v_imask); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_1 = __pyx_t_4; __Pyx_INCREF(__pyx_t_1); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_7 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_4); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_8(__pyx_t_1);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_v_val, __pyx_t_4);
        __pyx_t_4 = 0;

      /* "pandas/internals.pyx":1683
     *
     *         rvalues.flat[imask] = np.array([date_formatter(val) for val in
     *                                         values.ravel()[imask]], dtype=object)             # <<<<<<<<<<<<<<
     *
     *         return rvalues.tolist()
     */
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1682; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1684:

     1685:         return rvalues.tolist()

      /* "pandas/internals.pyx":1685
     *                                         values.ravel()[imask]], dtype=object)
     *
     *         return rvalues.tolist()             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_rvalues, __pyx_n_s_tolist); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1685; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_6 = PyObject_Call(__pyx_t_9, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1685; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_r = __pyx_t_6;
      __pyx_t_6 = 0;
      goto __pyx_L0;

     1686:

     1687:     def should_store(self, value):

    /* "pandas/internals.pyx":1687
     *         return rvalues.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_21should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_21should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_21should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_21should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_20should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_20should_store(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1687
     *         return rvalues.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1687
     *         return rvalues.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     */
      __pyx_tuple__392 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__392)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__392);
      __Pyx_GIVEREF(__pyx_tuple__392);

      /* "pandas/internals.pyx":1687
     *         return rvalues.tolist()
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_21should_store, 0, __pyx_n_s_DatetimeBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__393)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__393 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__392, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1687, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__393)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1688:         return issubclass(value.dtype.type, np.datetime64)

      /* "pandas/internals.pyx":1688
     *
     *     def should_store(self, value):
     *         return issubclass(value.dtype.type, np.datetime64)             # <<<<<<<<<<<<<<
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1688; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1688; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1688; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_datetime64); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1688; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1688; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1688; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1689:

     1690:     def astype(self, dtype, copy=False, raise_on_error=True):

    /* "pandas/internals.pyx":1690
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True):             # <<<<<<<<<<<<<<
     *         """
     *         handle convert to object as a special case
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_23astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_13DatetimeBlock_22astype[] = "\n        handle convert to object as a special case\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_23astype = {__Pyx_NAMESTR("astype"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_23astype, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_13DatetimeBlock_22astype)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_23astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_raise_on_error = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("astype (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_dtype,&__pyx_n_s_copy,&__pyx_n_s_raise_on_error,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        values[3] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("astype", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_raise_on_error);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "astype") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_dtype = values[1];
        __pyx_v_copy = values[2];
        __pyx_v_raise_on_error = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("astype", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_22astype(__pyx_self, __pyx_v_self, __pyx_v_dtype, __pyx_v_copy, __pyx_v_raise_on_error);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_22astype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_dtype, PyObject *__pyx_v_copy, PyObject *__pyx_v_raise_on_error) {
      PyObject *__pyx_v_klass = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("astype", 0);

      /* "pandas/internals.pyx":1690
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True):             # <<<<<<<<<<<<<<
     *         """
     *         handle convert to object as a special case
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_klass);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1690
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True):             # <<<<<<<<<<<<<<
     *         """
     *         handle convert to object as a special case
     */
      __pyx_tuple__394 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_dtype, __pyx_n_s_copy, __pyx_n_s_raise_on_error, __pyx_n_s_klass); if (unlikely(!__pyx_tuple__394)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__394);
      __Pyx_GIVEREF(__pyx_tuple__394);
      __pyx_codeobj__395 = (PyObject*)__Pyx_PyCode_New(4, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__394, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_astype, 1690, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__395)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1690
     *         return issubclass(value.dtype.type, np.datetime64)
     *
     *     def astype(self, dtype, copy=False, raise_on_error=True):             # <<<<<<<<<<<<<<
     *         """
     *         handle convert to object as a special case
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_23astype, 0, __pyx_n_s_DatetimeBlock_astype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__395)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__396);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_astype, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__396 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__396)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__396);
      __Pyx_GIVEREF(__pyx_tuple__396);

     1691:         """

     1692:         handle convert to object as a special case

     1693:         """

     1694:         klass = None

      /* "pandas/internals.pyx":1694
     *         handle convert to object as a special case
     *         """
     *         klass = None             # <<<<<<<<<<<<<<
     *         if np.dtype(dtype).type == np.object_:
     *             klass = ObjectBlock
     */
      __Pyx_INCREF(Py_None);
      __pyx_v_klass = Py_None;

     1695:         if np.dtype(dtype).type == np.object_:

      /* "pandas/internals.pyx":1695
     *         """
     *         klass = None
     *         if np.dtype(dtype).type == np.object_:             # <<<<<<<<<<<<<<
     *             klass = ObjectBlock
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     */
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_dtype);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_dtype);
      __Pyx_GIVEREF(__pyx_v_dtype);
      __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_type); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_object_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_4) {

     1696:             klass = ObjectBlock

        /* "pandas/internals.pyx":1696
     *         klass = None
     *         if np.dtype(dtype).type == np.object_:
     *             klass = ObjectBlock             # <<<<<<<<<<<<<<
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     *                             klass=klass)
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_ObjectBlock); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_2);
        __pyx_t_2 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1697:         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,

      /* "pandas/internals.pyx":1697
     *         if np.dtype(dtype).type == np.object_:
     *             klass = ObjectBlock
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,             # <<<<<<<<<<<<<<
     *                             klass=klass)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_astype_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1697; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1697; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_dtype);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_dtype);
      __Pyx_GIVEREF(__pyx_v_dtype);
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1697; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1697; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_raise_on_error, __pyx_v_raise_on_error) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1697; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1697
     *         if np.dtype(dtype).type == np.object_:
     *             klass = ObjectBlock
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,             # <<<<<<<<<<<<<<
     *                             klass=klass)
     *
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1697; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     1698:                             klass=klass)

      /* "pandas/internals.pyx":1698
     *             klass = ObjectBlock
     *         return self._astype(dtype, copy=copy, raise_on_error=raise_on_error,
     *                             klass=klass)             # <<<<<<<<<<<<<<
     *
     *     def set(self, item, value, check=False):
     */
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_klass, __pyx_v_klass) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1697; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1699:

     1700:     def set(self, item, value, check=False):

    /* "pandas/internals.pyx":1700
     *                             klass=klass)
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_25set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_13DatetimeBlock_24set[] = "\n        Modify Block in-place with new item value\n\n        Returns\n        -------\n        None\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_25set = {__Pyx_NAMESTR("set"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_25set, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_13DatetimeBlock_24set)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_25set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_value = 0;
      CYTHON_UNUSED PyObject *__pyx_v_check = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,&__pyx_n_s_value,&__pyx_n_s_check,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
        __pyx_v_value = values[2];
        __pyx_v_check = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_24set(__pyx_self, __pyx_v_self, __pyx_v_item, __pyx_v_value, __pyx_v_check);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_24set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value, CYTHON_UNUSED PyObject *__pyx_v_check) {
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":1700
     *                             klass=klass)
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1700
     *                             klass=klass)
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */
      __pyx_tuple__397 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_value, __pyx_n_s_check, __pyx_n_s_loc); if (unlikely(!__pyx_tuple__397)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__397);
      __Pyx_GIVEREF(__pyx_tuple__397);
      __pyx_codeobj__398 = (PyObject*)__Pyx_PyCode_New(4, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__397, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set, 1700, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__398)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1700
     *                             klass=klass)
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Modify Block in-place with new item value
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_25set, 0, __pyx_n_s_DatetimeBlock_set, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__398)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__399);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__399 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__399)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__399);
      __Pyx_GIVEREF(__pyx_tuple__399);

     1701:         """

     1702:         Modify Block in-place with new item value

     1703:

     1704:         Returns

     1705:         -------

     1706:         None

     1707:         """

     1708:         loc = self.items.get_loc(item)

      /* "pandas/internals.pyx":1708
     *         None
     *         """
     *         loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *
     *         if value.dtype != _NS_DTYPE:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_loc = __pyx_t_3;
      __pyx_t_3 = 0;

     1709:

     1710:         if value.dtype != _NS_DTYPE:

      /* "pandas/internals.pyx":1710
     *         loc = self.items.get_loc(item)
     *
     *         if value.dtype != _NS_DTYPE:             # <<<<<<<<<<<<<<
     *             value = tslib.cast_to_nanoseconds(value)
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_value, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_NS_DTYPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_RichCompare(__pyx_t_3, __pyx_t_1, Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_4) {

     1711:             value = tslib.cast_to_nanoseconds(value)

        /* "pandas/internals.pyx":1711
     *
     *         if value.dtype != _NS_DTYPE:
     *             value = tslib.cast_to_nanoseconds(value)             # <<<<<<<<<<<<<<
     *
     *         self.values[loc] = value
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1711; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_cast_to_nanoseconds); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1711; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1711; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_value);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_value);
        __Pyx_GIVEREF(__pyx_v_value);
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1711; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1712:

     1713:         self.values[loc] = value

      /* "pandas/internals.pyx":1713
     *             value = tslib.cast_to_nanoseconds(value)
     *
     *         self.values[loc] = value             # <<<<<<<<<<<<<<
     *
     *     def get_values(self, dtype=None):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (unlikely(PyObject_SetItem(__pyx_t_3, __pyx_v_loc, __pyx_v_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     1714:

     1715:     def get_values(self, dtype=None):

    /* "pandas/internals.pyx":1715
     *         self.values[loc] = value
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         # return object dtype as Timestamps
     *         if dtype == object:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_27get_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13DatetimeBlock_27get_values = {__Pyx_NAMESTR("get_values"), (PyCFunction)__pyx_pw_6pandas_9internals_13DatetimeBlock_27get_values, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13DatetimeBlock_27get_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_values (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_dtype,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_values") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1715; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_dtype = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_values", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1715; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.get_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_13DatetimeBlock_26get_values(__pyx_self, __pyx_v_self, __pyx_v_dtype);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13DatetimeBlock_26get_values(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_dtype) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_values", 0);

      /* "pandas/internals.pyx":1715
     *         self.values[loc] = value
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         # return object dtype as Timestamps
     *         if dtype == object:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.DatetimeBlock.get_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1715
     *         self.values[loc] = value
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         # return object dtype as Timestamps
     *         if dtype == object:
     */
      __pyx_tuple__400 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_dtype); if (unlikely(!__pyx_tuple__400)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1715; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__400);
      __Pyx_GIVEREF(__pyx_tuple__400);
      __pyx_codeobj__401 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__400, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_values, 1715, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__401)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1715; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1715
     *         self.values[loc] = value
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         # return object dtype as Timestamps
     *         if dtype == object:
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13DatetimeBlock_27get_values, 0, __pyx_n_s_DatetimeBlock_get_values, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__401)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1715; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__402);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_values, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1715; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__402 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__402)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1715; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__402);
      __Pyx_GIVEREF(__pyx_tuple__402);

     1716:         # return object dtype as Timestamps

     1717:         if dtype == object:

      /* "pandas/internals.pyx":1717
     *     def get_values(self, dtype=None):
     *         # return object dtype as Timestamps
     *         if dtype == object:             # <<<<<<<<<<<<<<
     *             return lib.map_infer(self.values.ravel(), lib.Timestamp)\
     *                       .reshape(self.values.shape)
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_dtype, __pyx_builtin_object, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1717; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1717; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     1718:             return lib.map_infer(self.values.ravel(), lib.Timestamp)\

        /* "pandas/internals.pyx":1718
     *         # return object dtype as Timestamps
     *         if dtype == object:
     *             return lib.map_infer(self.values.ravel(), lib.Timestamp)\             # <<<<<<<<<<<<<<
     *                       .reshape(self.values.shape)
     *         return self.values
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_lib); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_map_infer); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ravel); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_lib); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_Timestamp); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_1 = 0;
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1719:                       .reshape(self.values.shape)

        /* "pandas/internals.pyx":1719
     *         if dtype == object:
     *             return lib.map_infer(self.values.ravel(), lib.Timestamp)\
     *                       .reshape(self.values.shape)             # <<<<<<<<<<<<<<
     *         return self.values
     *
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_reshape); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_r = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L0;
      }

     1720:         return self.values

      /* "pandas/internals.pyx":1720
     *             return lib.map_infer(self.values.ravel(), lib.Timestamp)\
     *                       .reshape(self.values.shape)
     *         return self.values             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1720; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1721:

     1722:

     1723: class SparseBlock(Block):

      /* "pandas/internals.pyx":1723
     *
     *
     * class SparseBlock(Block):             # <<<<<<<<<<<<<<
     *
     *     """ implement as a list of sparse arrays of the same dtype """
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_SparseBlock, __pyx_n_s_SparseBlock, (PyObject *) NULL, __pyx_n_s_pandas_internals, __pyx_kp_s_implement_as_a_list_of_sparse_a); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1723
     *
     *
     * class SparseBlock(Block):             # <<<<<<<<<<<<<<
     *
     *     """ implement as a list of sparse arrays of the same dtype """
     */
      __pyx_t_4 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_SparseBlock, __pyx_t_1, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_SparseBlock, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     1724:

     1725:     """ implement as a list of sparse arrays of the same dtype """

     1726:     __slots__ = ['items', 'ref_items', '_ref_locs', 'ndim', 'values']

      /* "pandas/internals.pyx":1726
     *
     *     """ implement as a list of sparse arrays of the same dtype """
     *     __slots__ = ['items', 'ref_items', '_ref_locs', 'ndim', 'values']             # <<<<<<<<<<<<<<
     *     is_sparse = True
     *     is_numeric = True
     */
      __pyx_t_4 = PyList_New(5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_n_s_items);
      PyList_SET_ITEM(__pyx_t_4, 0, __pyx_n_s_items);
      __Pyx_GIVEREF(__pyx_n_s_items);
      __Pyx_INCREF(__pyx_n_s_ref_items);
      PyList_SET_ITEM(__pyx_t_4, 1, __pyx_n_s_ref_items);
      __Pyx_GIVEREF(__pyx_n_s_ref_items);
      __Pyx_INCREF(__pyx_n_s_ref_locs);
      PyList_SET_ITEM(__pyx_t_4, 2, __pyx_n_s_ref_locs);
      __Pyx_GIVEREF(__pyx_n_s_ref_locs);
      __Pyx_INCREF(__pyx_n_s_ndim);
      PyList_SET_ITEM(__pyx_t_4, 3, __pyx_n_s_ndim);
      __Pyx_GIVEREF(__pyx_n_s_ndim);
      __Pyx_INCREF(__pyx_n_s_values);
      PyList_SET_ITEM(__pyx_t_4, 4, __pyx_n_s_values);
      __Pyx_GIVEREF(__pyx_n_s_values);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_slots, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1727:     is_sparse = True

      /* "pandas/internals.pyx":1727
     *     """ implement as a list of sparse arrays of the same dtype """
     *     __slots__ = ['items', 'ref_items', '_ref_locs', 'ndim', 'values']
     *     is_sparse = True             # <<<<<<<<<<<<<<
     *     is_numeric = True
     *     _can_hold_na = True
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_sparse, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1728:     is_numeric = True

      /* "pandas/internals.pyx":1728
     *     __slots__ = ['items', 'ref_items', '_ref_locs', 'ndim', 'values']
     *     is_sparse = True
     *     is_numeric = True             # <<<<<<<<<<<<<<
     *     _can_hold_na = True
     *     _can_consolidate = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_numeric, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1728; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1729:     _can_hold_na = True

      /* "pandas/internals.pyx":1729
     *     is_sparse = True
     *     is_numeric = True
     *     _can_hold_na = True             # <<<<<<<<<<<<<<
     *     _can_consolidate = False
     *     _verify_integrity = False
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1730:     _can_consolidate = False

      /* "pandas/internals.pyx":1730
     *     is_numeric = True
     *     _can_hold_na = True
     *     _can_consolidate = False             # <<<<<<<<<<<<<<
     *     _verify_integrity = False
     *     _ftype = 'sparse'
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_consolidate, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1731:     _verify_integrity = False

      /* "pandas/internals.pyx":1731
     *     _can_hold_na = True
     *     _can_consolidate = False
     *     _verify_integrity = False             # <<<<<<<<<<<<<<
     *     _ftype = 'sparse'
     *
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_verify_integrity, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1731; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1732:     _ftype = 'sparse'

      /* "pandas/internals.pyx":1732
     *     _can_consolidate = False
     *     _verify_integrity = False
     *     _ftype = 'sparse'             # <<<<<<<<<<<<<<
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ftype, __pyx_n_s_sparse) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1732; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1733:

     1734:     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,

    /* "pandas/internals.pyx":1734
     *     _ftype = 'sparse'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_1__init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_1__init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_ndim = 0;
      PyObject *__pyx_v_fastpath = 0;
      CYTHON_UNUSED PyObject *__pyx_v_placement = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_items,&__pyx_n_s_ref_items,&__pyx_n_s_ndim,&__pyx_n_s_fastpath,&__pyx_n_s_placement,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_False));

      /* "pandas/internals.pyx":1734
     *     _ftype = 'sparse'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_items, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_ndim, PyObject *__pyx_v_fastpath, CYTHON_UNUSED PyObject *__pyx_v_placement) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__", 0);
      __Pyx_INCREF(__pyx_v_ndim);

      /* "pandas/internals.pyx":1734
     *     _ftype = 'sparse'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ndim);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1734
     *     _ftype = 'sparse'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */
      __pyx_tuple__403 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_ndim, __pyx_n_s_fastpath, __pyx_n_s_placement); if (unlikely(!__pyx_tuple__403)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__403);
      __Pyx_GIVEREF(__pyx_tuple__403);
      __pyx_codeobj__404 = (PyObject*)__Pyx_PyCode_New(7, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__403, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_init, 1734, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__404)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1734
     *     _ftype = 'sparse'
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,             # <<<<<<<<<<<<<<
     *                  placement=None):
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_1__init__, 0, __pyx_n_s_SparseBlock___init, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__404)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__405);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_init, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__405 = PyTuple_Pack(3, ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__405)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__405);
      __Pyx_GIVEREF(__pyx_tuple__405);

     1735:                  placement=None):

        /* "pandas/internals.pyx":1735
     *
     *     def __init__(self, values, items, ref_items, ndim=None, fastpath=False,
     *                  placement=None):             # <<<<<<<<<<<<<<
     *
     *         # kludgetastic
     */
        values[6] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ndim);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_placement);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_items = values[2];
        __pyx_v_ref_items = values[3];
        __pyx_v_ndim = values[4];
        __pyx_v_fastpath = values[5];
        __pyx_v_placement = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__init__", 0, 4, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1734; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock___init__(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_items, __pyx_v_ref_items, __pyx_v_ndim, __pyx_v_fastpath, __pyx_v_placement);

     1736:

     1737:         # kludgetastic

     1738:         if ndim is not None:

      /* "pandas/internals.pyx":1738
     *
     *         # kludgetastic
     *         if ndim is not None:             # <<<<<<<<<<<<<<
     *             if ndim == 1:
     *                 ndim = 1
     */
      __pyx_t_1 = (__pyx_v_ndim != Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1739:             if ndim == 1:

        /* "pandas/internals.pyx":1739
     *         # kludgetastic
     *         if ndim is not None:
     *             if ndim == 1:             # <<<<<<<<<<<<<<
     *                 ndim = 1
     *             elif ndim > 2:
     */
        __pyx_t_3 = PyObject_RichCompare(__pyx_v_ndim, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_2) {

     1740:                 ndim = 1

          /* "pandas/internals.pyx":1740
     *         if ndim is not None:
     *             if ndim == 1:
     *                 ndim = 1             # <<<<<<<<<<<<<<
     *             elif ndim > 2:
     *                 ndim = ndim
     */
          __Pyx_INCREF(__pyx_int_1);
          __Pyx_DECREF_SET(__pyx_v_ndim, __pyx_int_1);
          goto __pyx_L4;
        }

     1741:             elif ndim > 2:

        /* "pandas/internals.pyx":1741
     *             if ndim == 1:
     *                 ndim = 1
     *             elif ndim > 2:             # <<<<<<<<<<<<<<
     *                 ndim = ndim
     *         else:
     */
        __pyx_t_3 = PyObject_RichCompare(__pyx_v_ndim, __pyx_int_2, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_2) {

     1742:                 ndim = ndim

          /* "pandas/internals.pyx":1742
     *                 ndim = 1
     *             elif ndim > 2:
     *                 ndim = ndim             # <<<<<<<<<<<<<<
     *         else:
     *             if len(items) != 1:
     */
          __Pyx_INCREF(__pyx_v_ndim);
          __Pyx_DECREF_SET(__pyx_v_ndim, __pyx_v_ndim);
          goto __pyx_L4;
        }
        __pyx_L4:;
        goto __pyx_L3;
      }
      /*else*/ {

     1743:         else:

     1744:             if len(items) != 1:

        /* "pandas/internals.pyx":1744
     *                 ndim = ndim
     *         else:
     *             if len(items) != 1:             # <<<<<<<<<<<<<<
     *                 ndim = 1
     *             else:
     */
        __pyx_t_4 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1744; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = ((__pyx_t_4 != 1) != 0);
        if (__pyx_t_2) {

     1745:                 ndim = 1

          /* "pandas/internals.pyx":1745
     *         else:
     *             if len(items) != 1:
     *                 ndim = 1             # <<<<<<<<<<<<<<
     *             else:
     *                 ndim = 2
     */
          __Pyx_INCREF(__pyx_int_1);
          __Pyx_DECREF_SET(__pyx_v_ndim, __pyx_int_1);
          goto __pyx_L5;
        }
        /*else*/ {

     1746:             else:

     1747:                 ndim = 2

          /* "pandas/internals.pyx":1747
     *                 ndim = 1
     *             else:
     *                 ndim = 2             # <<<<<<<<<<<<<<
     *         self.ndim = ndim
     *
     */
          __Pyx_INCREF(__pyx_int_2);
          __Pyx_DECREF_SET(__pyx_v_ndim, __pyx_int_2);
        }
        __pyx_L5:;
      }
      __pyx_L3:;

     1748:         self.ndim = ndim

      /* "pandas/internals.pyx":1748
     *             else:
     *                 ndim = 2
     *         self.ndim = ndim             # <<<<<<<<<<<<<<
     *
     *         self._ref_locs = None
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ndim, __pyx_v_ndim) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1749:

     1750:         self._ref_locs = None

      /* "pandas/internals.pyx":1750
     *         self.ndim = ndim
     *
     *         self._ref_locs = None             # <<<<<<<<<<<<<<
     *         self.values = values
     *         if fastpath:
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1750; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1751:         self.values = values

      /* "pandas/internals.pyx":1751
     *
     *         self._ref_locs = None
     *         self.values = values             # <<<<<<<<<<<<<<
     *         if fastpath:
     *             self.items = items
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values, __pyx_v_values) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1752:         if fastpath:

      /* "pandas/internals.pyx":1752
     *         self._ref_locs = None
     *         self.values = values
     *         if fastpath:             # <<<<<<<<<<<<<<
     *             self.items = items
     *             self.ref_items = ref_items
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_fastpath); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     1753:             self.items = items

        /* "pandas/internals.pyx":1753
     *         self.values = values
     *         if fastpath:
     *             self.items = items             # <<<<<<<<<<<<<<
     *             self.ref_items = ref_items
     *         else:
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items, __pyx_v_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1753; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1754:             self.ref_items = ref_items

        /* "pandas/internals.pyx":1754
     *         if fastpath:
     *             self.items = items
     *             self.ref_items = ref_items             # <<<<<<<<<<<<<<
     *         else:
     *             self.items = _ensure_index(items)
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_items, __pyx_v_ref_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1754; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L6;
      }
      /*else*/ {

     1755:         else:

     1756:             self.items = _ensure_index(items)

        /* "pandas/internals.pyx":1756
     *             self.ref_items = ref_items
     *         else:
     *             self.items = _ensure_index(items)             # <<<<<<<<<<<<<<
     *             self.ref_items = _ensure_index(ref_items)
     *
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     1757:             self.ref_items = _ensure_index(ref_items)

        /* "pandas/internals.pyx":1757
     *         else:
     *             self.items = _ensure_index(items)
     *             self.ref_items = _ensure_index(ref_items)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_ref_items);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_ref_items);
        __Pyx_GIVEREF(__pyx_v_ref_items);
        __pyx_t_3 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_items, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
      __pyx_L6:;

     1758:

     1759:     @property

      /* "pandas/internals.pyx":1759
     *             self.ref_items = _ensure_index(ref_items)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def shape(self):
     *         return (len(self.items), self.sp_index.length)
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_shape, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1760:     def shape(self):

    /* "pandas/internals.pyx":1760
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return (len(self.items), self.sp_index.length)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_3shape(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_3shape = {__Pyx_NAMESTR("shape"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_3shape, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_3shape(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_2shape(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_2shape(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape", 0);

      /* "pandas/internals.pyx":1760
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return (len(self.items), self.sp_index.length)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.shape", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1760
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return (len(self.items), self.sp_index.length)
     *
     */
      __pyx_tuple__406 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__406)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__406);
      __Pyx_GIVEREF(__pyx_tuple__406);

      /* "pandas/internals.pyx":1760
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         return (len(self.items), self.sp_index.length)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_3shape, 0, __pyx_n_s_SparseBlock_shape, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__407)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__407 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__406, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shape, 1760, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__407)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1761:         return (len(self.items), self.sp_index.length)

      /* "pandas/internals.pyx":1761
     *     @property
     *     def shape(self):
     *         return (len(self.items), self.sp_index.length)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_sp_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_length); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_1 = 0;
      __pyx_t_4 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1762:

     1763:     @property

      /* "pandas/internals.pyx":1763
     *         return (len(self.items), self.sp_index.length)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def itemsize(self):
     *         return self.dtype.itemsize
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1763; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1763; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_itemsize, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1764:     def itemsize(self):

    /* "pandas/internals.pyx":1764
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.dtype.itemsize
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_5itemsize(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_5itemsize = {__Pyx_NAMESTR("itemsize"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_5itemsize, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_5itemsize(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("itemsize (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_4itemsize(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_4itemsize(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("itemsize", 0);

      /* "pandas/internals.pyx":1764
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.dtype.itemsize
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.itemsize", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1764
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.dtype.itemsize
     *
     */
      __pyx_tuple__408 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__408)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__408);
      __Pyx_GIVEREF(__pyx_tuple__408);

      /* "pandas/internals.pyx":1764
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self.dtype.itemsize
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_5itemsize, 0, __pyx_n_s_SparseBlock_itemsize, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__409)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__409 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__408, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_itemsize, 1764, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__409)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1765:         return self.dtype.itemsize

      /* "pandas/internals.pyx":1765
     *     @property
     *     def itemsize(self):
     *         return self.dtype.itemsize             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1765; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1765; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1766:

     1767:     @property

      /* "pandas/internals.pyx":1767
     *         return self.dtype.itemsize
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def fill_value(self):
     *         return self.values.fill_value
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1767; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1767; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1768; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1768:     def fill_value(self):

    /* "pandas/internals.pyx":1768
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return self.values.fill_value
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_7fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_7fill_value = {__Pyx_NAMESTR("fill_value"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_7fill_value, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_7fill_value(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_6fill_value(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_6fill_value(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value", 0);

      /* "pandas/internals.pyx":1768
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return self.values.fill_value
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.fill_value", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1768
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return self.values.fill_value
     *
     */
      __pyx_tuple__410 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__410)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1768; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__410);
      __Pyx_GIVEREF(__pyx_tuple__410);

      /* "pandas/internals.pyx":1768
     *
     *     @property
     *     def fill_value(self):             # <<<<<<<<<<<<<<
     *         return self.values.fill_value
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_7fill_value, 0, __pyx_n_s_SparseBlock_fill_value, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__411)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1768; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__411 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__410, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fill_value, 1768, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__411)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1768; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1769:         return self.values.fill_value

      /* "pandas/internals.pyx":1769
     *     @property
     *     def fill_value(self):
     *         return self.values.fill_value             # <<<<<<<<<<<<<<
     *
     *     @fill_value.setter
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1770:

     1771:     @fill_value.setter

      /* "pandas/internals.pyx":1771
     *         return self.values.fill_value
     *
     *     @fill_value.setter             # <<<<<<<<<<<<<<
     *     def fill_value(self, v):
     *         # we may need to upcast our fill to match our dtype
     */
      __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_fill_value);
      if (unlikely(!__pyx_t_4)) {
        PyErr_Clear();
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_fill_value);
      }
      if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_setter); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "pandas/internals.pyx":1771
     *         return self.values.fill_value
     *
     *     @fill_value.setter             # <<<<<<<<<<<<<<
     *     def fill_value(self, v):
     *         # we may need to upcast our fill to match our dtype
     */
      __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1772:     def fill_value(self, v):

    /* "pandas/internals.pyx":1772
     *
     *     @fill_value.setter
     *     def fill_value(self, v):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_9fill_value(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_9fill_value = {__Pyx_NAMESTR("fill_value"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_9fill_value, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_9fill_value(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_v = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_v,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("fill_value", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1772; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "fill_value") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1772; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_v = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("fill_value", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1772; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.fill_value", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_8fill_value(__pyx_self, __pyx_v_self, __pyx_v_v);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_8fill_value(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_v) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fill_value", 0);
      __Pyx_INCREF(__pyx_v_v);

      /* "pandas/internals.pyx":1772
     *
     *     @fill_value.setter
     *     def fill_value(self, v):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.fill_value", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1772
     *
     *     @fill_value.setter
     *     def fill_value(self, v):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */
      __pyx_tuple__412 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_v); if (unlikely(!__pyx_tuple__412)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__412);
      __Pyx_GIVEREF(__pyx_tuple__412);

      /* "pandas/internals.pyx":1772
     *
     *     @fill_value.setter
     *     def fill_value(self, v):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_9fill_value, 0, __pyx_n_s_SparseBlock_fill_value, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__413)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__413 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__412, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fill_value, 1772, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__413)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1772; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1773:         # we may need to upcast our fill to match our dtype

     1774:         if issubclass(self.dtype.type, np.floating):

      /* "pandas/internals.pyx":1774
     *     def fill_value(self, v):
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):             # <<<<<<<<<<<<<<
     *             v = float(v)
     *         self.values.fill_value = v
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_floating); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     1775:             v = float(v)

        /* "pandas/internals.pyx":1775
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     *             v = float(v)             # <<<<<<<<<<<<<<
     *         self.values.fill_value = v
     *
     */
        __pyx_t_6 = __Pyx_PyObject_AsDouble(__pyx_v_v); if (unlikely(__pyx_t_6 == ((double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1775; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyFloat_FromDouble(__pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1775; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_v, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1776:         self.values.fill_value = v

      /* "pandas/internals.pyx":1776
     *         if issubclass(self.dtype.type, np.floating):
     *             v = float(v)
     *         self.values.fill_value = v             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1776; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (__Pyx_PyObject_SetAttrStr(__pyx_t_3, __pyx_n_s_fill_value, __pyx_v_v) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1776; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     1777:

     1778:     @property

      /* "pandas/internals.pyx":1778
     *         self.values.fill_value = v
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def sp_values(self):
     *         return self.values.sp_values
     */
      __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1778; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1778; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_sp_values, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1779:     def sp_values(self):

    /* "pandas/internals.pyx":1779
     *
     *     @property
     *     def sp_values(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_values
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_11sp_values(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_11sp_values = {__Pyx_NAMESTR("sp_values"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_11sp_values, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_11sp_values(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sp_values (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_10sp_values(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_10sp_values(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sp_values", 0);

      /* "pandas/internals.pyx":1779
     *
     *     @property
     *     def sp_values(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_values
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.sp_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1779
     *
     *     @property
     *     def sp_values(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_values
     *
     */
      __pyx_tuple__414 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__414)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__414);
      __Pyx_GIVEREF(__pyx_tuple__414);

      /* "pandas/internals.pyx":1779
     *
     *     @property
     *     def sp_values(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_values
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_11sp_values, 0, __pyx_n_s_SparseBlock_sp_values, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__415)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__415 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__414, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_sp_values, 1779, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__415)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1780:         return self.values.sp_values

      /* "pandas/internals.pyx":1780
     *     @property
     *     def sp_values(self):
     *         return self.values.sp_values             # <<<<<<<<<<<<<<
     *
     *     @sp_values.setter
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sp_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1781:

     1782:     @sp_values.setter

      /* "pandas/internals.pyx":1782
     *         return self.values.sp_values
     *
     *     @sp_values.setter             # <<<<<<<<<<<<<<
     *     def sp_values(self, v):
     *         # reset the sparse values
     */
      __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_sp_values);
      if (unlikely(!__pyx_t_4)) {
        PyErr_Clear();
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_sp_values);
      }
      if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1782; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_setter); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1782; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "pandas/internals.pyx":1782
     *         return self.values.sp_values
     *
     *     @sp_values.setter             # <<<<<<<<<<<<<<
     *     def sp_values(self, v):
     *         # reset the sparse values
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1782; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1782; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_sp_values, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1783:     def sp_values(self, v):

    /* "pandas/internals.pyx":1783
     *
     *     @sp_values.setter
     *     def sp_values(self, v):             # <<<<<<<<<<<<<<
     *         # reset the sparse values
     *         self.values = SparseArray(v, sparse_index=self.sp_index,
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_13sp_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_13sp_values = {__Pyx_NAMESTR("sp_values"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_13sp_values, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_13sp_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_v = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sp_values (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_v,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_v)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("sp_values", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1783; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "sp_values") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1783; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_v = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("sp_values", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1783; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.sp_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_12sp_values(__pyx_self, __pyx_v_self, __pyx_v_v);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_12sp_values(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_v) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sp_values", 0);

      /* "pandas/internals.pyx":1783
     *
     *     @sp_values.setter
     *     def sp_values(self, v):             # <<<<<<<<<<<<<<
     *         # reset the sparse values
     *         self.values = SparseArray(v, sparse_index=self.sp_index,
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.sp_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1783
     *
     *     @sp_values.setter
     *     def sp_values(self, v):             # <<<<<<<<<<<<<<
     *         # reset the sparse values
     *         self.values = SparseArray(v, sparse_index=self.sp_index,
     */
      __pyx_tuple__416 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_v); if (unlikely(!__pyx_tuple__416)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__416);
      __Pyx_GIVEREF(__pyx_tuple__416);

      /* "pandas/internals.pyx":1783
     *
     *     @sp_values.setter
     *     def sp_values(self, v):             # <<<<<<<<<<<<<<
     *         # reset the sparse values
     *         self.values = SparseArray(v, sparse_index=self.sp_index,
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_13sp_values, 0, __pyx_n_s_SparseBlock_sp_values, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__417)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__417 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__416, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_sp_values, 1783, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__417)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1784:         # reset the sparse values

     1785:         self.values = SparseArray(v, sparse_index=self.sp_index,

      /* "pandas/internals.pyx":1785
     *     def sp_values(self, v):
     *         # reset the sparse values
     *         self.values = SparseArray(v, sparse_index=self.sp_index,             # <<<<<<<<<<<<<<
     *                                   kind=self.kind, dtype=v.dtype,
     *                                   fill_value=self.fill_value, copy=False)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseArray); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_v);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_v);
      __Pyx_GIVEREF(__pyx_v_v);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_sp_index); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_sparse_index, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "pandas/internals.pyx":1785
     *     def sp_values(self, v):
     *         # reset the sparse values
     *         self.values = SparseArray(v, sparse_index=self.sp_index,             # <<<<<<<<<<<<<<
     *                                   kind=self.kind, dtype=v.dtype,
     *                                   fill_value=self.fill_value, copy=False)
     */
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1786:                                   kind=self.kind, dtype=v.dtype,

      /* "pandas/internals.pyx":1786
     *         # reset the sparse values
     *         self.values = SparseArray(v, sparse_index=self.sp_index,
     *                                   kind=self.kind, dtype=v.dtype,             # <<<<<<<<<<<<<<
     *                                   fill_value=self.fill_value, copy=False)
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_kind); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1786; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_kind, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1786; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_dtype, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1787:                                   fill_value=self.fill_value, copy=False)

      /* "pandas/internals.pyx":1787
     *         self.values = SparseArray(v, sparse_index=self.sp_index,
     *                                   kind=self.kind, dtype=v.dtype,
     *                                   fill_value=self.fill_value, copy=False)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1787; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_copy, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1785; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1788:

     1789:     @property

      /* "pandas/internals.pyx":1789
     *                                   fill_value=self.fill_value, copy=False)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def sp_index(self):
     *         return self.values.sp_index
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_sp_index, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1790; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1790:     def sp_index(self):

    /* "pandas/internals.pyx":1790
     *
     *     @property
     *     def sp_index(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_index
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_15sp_index(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_15sp_index = {__Pyx_NAMESTR("sp_index"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_15sp_index, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_15sp_index(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sp_index (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_14sp_index(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_14sp_index(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sp_index", 0);

      /* "pandas/internals.pyx":1790
     *
     *     @property
     *     def sp_index(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_index
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.sp_index", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1790
     *
     *     @property
     *     def sp_index(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_index
     *
     */
      __pyx_tuple__418 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__418)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1790; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__418);
      __Pyx_GIVEREF(__pyx_tuple__418);

      /* "pandas/internals.pyx":1790
     *
     *     @property
     *     def sp_index(self):             # <<<<<<<<<<<<<<
     *         return self.values.sp_index
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_15sp_index, 0, __pyx_n_s_SparseBlock_sp_index, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__419)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1790; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__419 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__418, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_sp_index, 1790, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__419)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1790; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1791:         return self.values.sp_index

      /* "pandas/internals.pyx":1791
     *     @property
     *     def sp_index(self):
     *         return self.values.sp_index             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sp_index); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1792:

     1793:     @property

      /* "pandas/internals.pyx":1793
     *         return self.values.sp_index
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def kind(self):
     *         return self.values.kind
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_kind, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     1794:     def kind(self):

    /* "pandas/internals.pyx":1794
     *
     *     @property
     *     def kind(self):             # <<<<<<<<<<<<<<
     *         return self.values.kind
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_17kind(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_17kind = {__Pyx_NAMESTR("kind"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_17kind, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_17kind(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("kind (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_16kind(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_16kind(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("kind", 0);

      /* "pandas/internals.pyx":1794
     *
     *     @property
     *     def kind(self):             # <<<<<<<<<<<<<<
     *         return self.values.kind
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.kind", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1794
     *
     *     @property
     *     def kind(self):             # <<<<<<<<<<<<<<
     *         return self.values.kind
     *
     */
      __pyx_tuple__420 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__420)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__420);
      __Pyx_GIVEREF(__pyx_tuple__420);

      /* "pandas/internals.pyx":1794
     *
     *     @property
     *     def kind(self):             # <<<<<<<<<<<<<<
     *         return self.values.kind
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_17kind, 0, __pyx_n_s_SparseBlock_kind, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__421)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__421 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__420, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_kind, 1794, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__421)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1794; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1795:         return self.values.kind

      /* "pandas/internals.pyx":1795
     *     @property
     *     def kind(self):
     *         return self.values.kind             # <<<<<<<<<<<<<<
     *
     *     def __len__(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1795; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_kind); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1795; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1796:

     1797:     def __len__(self):

    /* "pandas/internals.pyx":1797
     *         return self.values.kind
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         try:
     *             return self.sp_index.length
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_19__len__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_19__len__ = {__Pyx_NAMESTR("__len__"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_19__len__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_19__len__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__len__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_18__len__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_18__len__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__len__", 0);

      /* "pandas/internals.pyx":1797
     *         return self.values.kind
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         try:
     *             return self.sp_index.length
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.__len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1797
     *         return self.values.kind
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         try:
     *             return self.sp_index.length
     */
      __pyx_tuple__422 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__422)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1797; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__422);
      __Pyx_GIVEREF(__pyx_tuple__422);

      /* "pandas/internals.pyx":1797
     *         return self.values.kind
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         try:
     *             return self.sp_index.length
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_19__len__, 0, __pyx_n_s_SparseBlock___len, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__423)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1797; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_len, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1797; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__423 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__422, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_len, 1797, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__423)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1797; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1798:         try:

      /* "pandas/internals.pyx":1798
     *
     *     def __len__(self):
     *         try:             # <<<<<<<<<<<<<<
     *             return self.sp_index.length
     *         except:
     */
      {
        /*try:*/ {

     1799:             return self.sp_index.length

          /* "pandas/internals.pyx":1799
     *     def __len__(self):
     *         try:
     *             return self.sp_index.length             # <<<<<<<<<<<<<<
     *         except:
     *             return 0
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_sp_index); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1799; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_length); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1799; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_r = __pyx_t_5;
          __pyx_t_5 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

     1800:         except:

        /* "pandas/internals.pyx":1800
     *         try:
     *             return self.sp_index.length
     *         except:             # <<<<<<<<<<<<<<
     *             return 0
     *
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.SparseBlock.__len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1800; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_6);

     1801:             return 0

          /* "pandas/internals.pyx":1801
     *             return self.sp_index.length
     *         except:
     *             return 0             # <<<<<<<<<<<<<<
     *
     *     def should_store(self, value):
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_int_0);
          __pyx_r = __pyx_int_0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L6_except_return;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L6_except_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     1802:

     1803:     def should_store(self, value):

    /* "pandas/internals.pyx":1803
     *             return 0
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return isinstance(value, SparseArray)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_21should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_21should_store = {__Pyx_NAMESTR("should_store"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_21should_store, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_21should_store(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1803; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "should_store") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1803; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("should_store", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1803; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_20should_store(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_20should_store(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("should_store", 0);

      /* "pandas/internals.pyx":1803
     *             return 0
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return isinstance(value, SparseArray)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.should_store", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1803
     *             return 0
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return isinstance(value, SparseArray)
     *
     */
      __pyx_tuple__424 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__424)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1803; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__424);
      __Pyx_GIVEREF(__pyx_tuple__424);

      /* "pandas/internals.pyx":1803
     *             return 0
     *
     *     def should_store(self, value):             # <<<<<<<<<<<<<<
     *         return isinstance(value, SparseArray)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_21should_store, 0, __pyx_n_s_SparseBlock_should_store, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__425)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1803; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_should_store, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1803; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__425 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__424, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_should_store, 1803, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__425)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1803; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1804:         return isinstance(value, SparseArray)

      /* "pandas/internals.pyx":1804
     *
     *     def should_store(self, value):
     *         return isinstance(value, SparseArray)             # <<<<<<<<<<<<<<
     *
     *     def prepare_for_merge(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseArray); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_IsInstance(__pyx_v_value, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1805:

     1806:     def prepare_for_merge(self, **kwargs):

    /* "pandas/internals.pyx":1806
     *         return isinstance(value, SparseArray)
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ create a dense block """
     *         return make_block(self.get_values(), self.items, self.ref_items)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_23prepare_for_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_22prepare_for_merge[] = " create a dense block ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_23prepare_for_merge = {__Pyx_NAMESTR("prepare_for_merge"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_23prepare_for_merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_22prepare_for_merge)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_23prepare_for_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("prepare_for_merge (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "prepare_for_merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1806; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("prepare_for_merge", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1806; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.prepare_for_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_22prepare_for_merge(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_22prepare_for_merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("prepare_for_merge", 0);

      /* "pandas/internals.pyx":1806
     *         return isinstance(value, SparseArray)
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ create a dense block """
     *         return make_block(self.get_values(), self.items, self.ref_items)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.prepare_for_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1806
     *         return isinstance(value, SparseArray)
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ create a dense block """
     *         return make_block(self.get_values(), self.items, self.ref_items)
     */
      __pyx_tuple__426 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__426)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__426);
      __Pyx_GIVEREF(__pyx_tuple__426);

      /* "pandas/internals.pyx":1806
     *         return isinstance(value, SparseArray)
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ create a dense block """
     *         return make_block(self.get_values(), self.items, self.ref_items)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_23prepare_for_merge, 0, __pyx_n_s_SparseBlock_prepare_for_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__427)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_prepare_for_merge, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__427 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__426, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_prepare_for_merge, 1806, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__427)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1807:         """ create a dense block """

     1808:         return make_block(self.get_values(), self.items, self.ref_items)

      /* "pandas/internals.pyx":1808
     *     def prepare_for_merge(self, **kwargs):
     *         """ create a dense block """
     *         return make_block(self.get_values(), self.items, self.ref_items)             # <<<<<<<<<<<<<<
     *
     *     def post_merge(self, items, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_3 = 0;
      __pyx_t_2 = 0;
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     1809:

     1810:     def post_merge(self, items, **kwargs):

    /* "pandas/internals.pyx":1810
     *         return make_block(self.get_values(), self.items, self.ref_items)
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         return self
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_25post_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_25post_merge = {__Pyx_NAMESTR("post_merge"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_25post_merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_25post_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_items = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("post_merge (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_items,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("post_merge", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1810; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "post_merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1810; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_items = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("post_merge", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1810; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.post_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_24post_merge(__pyx_self, __pyx_v_self, __pyx_v_items, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_24post_merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_items, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("post_merge", 0);

      /* "pandas/internals.pyx":1810
     *         return make_block(self.get_values(), self.items, self.ref_items)
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         return self
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1810
     *         return make_block(self.get_values(), self.items, self.ref_items)
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         return self
     *
     */
      __pyx_tuple__428 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_items, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__428)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__428);
      __Pyx_GIVEREF(__pyx_tuple__428);

      /* "pandas/internals.pyx":1810
     *         return make_block(self.get_values(), self.items, self.ref_items)
     *
     *     def post_merge(self, items, **kwargs):             # <<<<<<<<<<<<<<
     *         return self
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_25post_merge, 0, __pyx_n_s_SparseBlock_post_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__429)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_post_merge, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__429 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__428, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_post_merge, 1810, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__429)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1811:         return self

      /* "pandas/internals.pyx":1811
     *
     *     def post_merge(self, items, **kwargs):
     *         return self             # <<<<<<<<<<<<<<
     *
     *     def set(self, item, value, check=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_self);
      __pyx_r = __pyx_v_self;
      goto __pyx_L0;

     1812:

     1813:     def set(self, item, value, check=False):

    /* "pandas/internals.pyx":1813
     *         return self
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         self.values = value
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_27set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_27set = {__Pyx_NAMESTR("set"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_27set, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_27set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_value = 0;
      CYTHON_UNUSED PyObject *__pyx_v_check = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,&__pyx_n_s_value,&__pyx_n_s_check,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
        __pyx_v_value = values[2];
        __pyx_v_check = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_26set(__pyx_self, __pyx_v_self, __pyx_v_item, __pyx_v_value, __pyx_v_check);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_26set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_item, PyObject *__pyx_v_value, CYTHON_UNUSED PyObject *__pyx_v_check) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set", 0);

      /* "pandas/internals.pyx":1813
     *         return self
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         self.values = value
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1813
     *         return self
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         self.values = value
     *
     */
      __pyx_tuple__430 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_value, __pyx_n_s_check); if (unlikely(!__pyx_tuple__430)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__430);
      __Pyx_GIVEREF(__pyx_tuple__430);
      __pyx_codeobj__431 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__430, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set, 1813, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__431)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1813
     *         return self
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         self.values = value
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_27set, 0, __pyx_n_s_SparseBlock_set, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__431)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__432);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__432 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__432)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1813; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__432);
      __Pyx_GIVEREF(__pyx_tuple__432);

     1814:         self.values = value

      /* "pandas/internals.pyx":1814
     *
     *     def set(self, item, value, check=False):
     *         self.values = value             # <<<<<<<<<<<<<<
     *
     *     def get(self, item):
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values, __pyx_v_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1814; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1815:

     1816:     def get(self, item):

    /* "pandas/internals.pyx":1816
     *         self.values = value
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.ndim == 1:
     *             loc = self.items.get_loc(item)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_29get(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_29get = {__Pyx_NAMESTR("get"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_29get, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_29get(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("get", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1816; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1816; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1816; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.get", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_28get(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_28get(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get", 0);

      /* "pandas/internals.pyx":1816
     *         self.values = value
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.ndim == 1:
     *             loc = self.items.get_loc(item)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.get", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1816
     *         self.values = value
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.ndim == 1:
     *             loc = self.items.get_loc(item)
     */
      __pyx_tuple__433 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_loc); if (unlikely(!__pyx_tuple__433)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1816; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__433);
      __Pyx_GIVEREF(__pyx_tuple__433);

      /* "pandas/internals.pyx":1816
     *         self.values = value
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.ndim == 1:
     *             loc = self.items.get_loc(item)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_29get, 0, __pyx_n_s_SparseBlock_get, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__434)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1816; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1816; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__434 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__433, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get, 1816, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__434)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1816; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1817:         if self.ndim == 1:

      /* "pandas/internals.pyx":1817
     *
     *     def get(self, item):
     *         if self.ndim == 1:             # <<<<<<<<<<<<<<
     *             loc = self.items.get_loc(item)
     *             return self.values[loc]
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1817; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1817; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1817; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     1818:             loc = self.items.get_loc(item)

        /* "pandas/internals.pyx":1818
     *     def get(self, item):
     *         if self.ndim == 1:
     *             loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *             return self.values[loc]
     *         else:
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_loc = __pyx_t_4;
        __pyx_t_4 = 0;

     1819:             return self.values[loc]

        /* "pandas/internals.pyx":1819
     *         if self.ndim == 1:
     *             loc = self.items.get_loc(item)
     *             return self.values[loc]             # <<<<<<<<<<<<<<
     *         else:
     *             return self.values
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1819; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = PyObject_GetItem(__pyx_t_4, __pyx_v_loc); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1819; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }
      /*else*/ {

     1820:         else:

     1821:             return self.values

        /* "pandas/internals.pyx":1821
     *             return self.values[loc]
     *         else:
     *             return self.values             # <<<<<<<<<<<<<<
     *
     *     def _slice(self, slicer):
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }

     1822:

     1823:     def _slice(self, slicer):

    /* "pandas/internals.pyx":1823
     *             return self.values
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values (but densify first) """
     *         return self.get_values()[slicer]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_31_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_30_slice[] = " return a slice of my values (but densify first) ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_31_slice = {__Pyx_NAMESTR("_slice"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_31_slice, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_30_slice)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_31_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slicer = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_slice (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slicer,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slicer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_slice", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1823; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_slice") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1823; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_slicer = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_slice", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1823; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock._slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_30_slice(__pyx_self, __pyx_v_self, __pyx_v_slicer);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_30_slice(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slicer) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_slice", 0);

      /* "pandas/internals.pyx":1823
     *             return self.values
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values (but densify first) """
     *         return self.get_values()[slicer]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SparseBlock._slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1823
     *             return self.values
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values (but densify first) """
     *         return self.get_values()[slicer]
     */
      __pyx_tuple__435 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_slicer); if (unlikely(!__pyx_tuple__435)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__435);
      __Pyx_GIVEREF(__pyx_tuple__435);

      /* "pandas/internals.pyx":1823
     *             return self.values
     *
     *     def _slice(self, slicer):             # <<<<<<<<<<<<<<
     *         """ return a slice of my values (but densify first) """
     *         return self.get_values()[slicer]
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_31_slice, 0, __pyx_n_s_SparseBlock__slice, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__436)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_slice, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__436 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__435, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_slice, 1823, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__436)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1824:         """ return a slice of my values (but densify first) """

     1825:         return self.get_values()[slicer]

      /* "pandas/internals.pyx":1825
     *     def _slice(self, slicer):
     *         """ return a slice of my values (but densify first) """
     *         return self.get_values()[slicer]             # <<<<<<<<<<<<<<
     *
     *     def get_values(self, dtype=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1825; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1825; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_GetItem(__pyx_t_2, __pyx_v_slicer); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1825; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1826:

     1827:     def get_values(self, dtype=None):

    /* "pandas/internals.pyx":1827
     *         return self.get_values()[slicer]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         """ need to to_dense myself (and always return a ndim sized object) """
     *         values = self.values.to_dense()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_33get_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_32get_values[] = " need to to_dense myself (and always return a ndim sized object) ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_33get_values = {__Pyx_NAMESTR("get_values"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_33get_values, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_32get_values)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_33get_values(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_values (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_dtype,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_values") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1827; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_dtype = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_values", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1827; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.get_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_32get_values(__pyx_self, __pyx_v_self, __pyx_v_dtype);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_32get_values(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_dtype) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_values", 0);

      /* "pandas/internals.pyx":1827
     *         return self.get_values()[slicer]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         """ need to to_dense myself (and always return a ndim sized object) """
     *         values = self.values.to_dense()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.get_values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1827
     *         return self.get_values()[slicer]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         """ need to to_dense myself (and always return a ndim sized object) """
     *         values = self.values.to_dense()
     */
      __pyx_tuple__437 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_dtype, __pyx_n_s_values); if (unlikely(!__pyx_tuple__437)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1827; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__437);
      __Pyx_GIVEREF(__pyx_tuple__437);
      __pyx_codeobj__438 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__437, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_values, 1827, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__438)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1827; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1827
     *         return self.get_values()[slicer]
     *
     *     def get_values(self, dtype=None):             # <<<<<<<<<<<<<<
     *         """ need to to_dense myself (and always return a ndim sized object) """
     *         values = self.values.to_dense()
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_33get_values, 0, __pyx_n_s_SparseBlock_get_values, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__438)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1827; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__439);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_values, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1827; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__439 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__439)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1827; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__439);
      __Pyx_GIVEREF(__pyx_tuple__439);

     1828:         """ need to to_dense myself (and always return a ndim sized object) """

     1829:         values = self.values.to_dense()

      /* "pandas/internals.pyx":1829
     *     def get_values(self, dtype=None):
     *         """ need to to_dense myself (and always return a ndim sized object) """
     *         values = self.values.to_dense()             # <<<<<<<<<<<<<<
     *         if values.ndim == self.ndim - 1:
     *             values = values.reshape((1,) + values.shape)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1829; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_to_dense); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1829; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1829; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1830:         if values.ndim == self.ndim - 1:

      /* "pandas/internals.pyx":1830
     *         """ need to to_dense myself (and always return a ndim sized object) """
     *         values = self.values.to_dense()
     *         if values.ndim == self.ndim - 1:             # <<<<<<<<<<<<<<
     *             values = values.reshape((1,) + values.shape)
     *         return values
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyNumber_Subtract(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_t_3, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_4) {

     1831:             values = values.reshape((1,) + values.shape)

        /* "pandas/internals.pyx":1831
     *         values = self.values.to_dense()
     *         if values.ndim == self.ndim - 1:
     *             values = values.reshape((1,) + values.shape)             # <<<<<<<<<<<<<<
     *         return values
     *
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_reshape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyNumber_Add(__pyx_tuple__49, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":1831
     *         values = self.values.to_dense()
     *         if values.ndim == self.ndim - 1:
     *             values = values.reshape((1,) + values.shape)             # <<<<<<<<<<<<<<
     *         return values
     *
     */
      __pyx_tuple__49 = PyTuple_Pack(1, __pyx_int_1); if (unlikely(!__pyx_tuple__49)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__49);
      __Pyx_GIVEREF(__pyx_tuple__49);

     1832:         return values

      /* "pandas/internals.pyx":1832
     *         if values.ndim == self.ndim - 1:
     *             values = values.reshape((1,) + values.shape)
     *         return values             # <<<<<<<<<<<<<<
     *
     *     def get_merge_length(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_values);
      __pyx_r = __pyx_v_values;
      goto __pyx_L0;

     1833:

     1834:     def get_merge_length(self):

    /* "pandas/internals.pyx":1834
     *         return values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return 1
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_35get_merge_length(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_35get_merge_length = {__Pyx_NAMESTR("get_merge_length"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_35get_merge_length, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_35get_merge_length(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_merge_length (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_34get_merge_length(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_34get_merge_length(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_merge_length", 0);

      /* "pandas/internals.pyx":1834
     *         return values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return 1
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1834
     *         return values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return 1
     *
     */
      __pyx_tuple__440 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__440)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__440);
      __Pyx_GIVEREF(__pyx_tuple__440);

      /* "pandas/internals.pyx":1834
     *         return values
     *
     *     def get_merge_length(self):             # <<<<<<<<<<<<<<
     *         return 1
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_35get_merge_length, 0, __pyx_n_s_SparseBlock_get_merge_length, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__441)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_merge_length, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__441 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__440, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_merge_length, 1834, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__441)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1835:         return 1

      /* "pandas/internals.pyx":1835
     *
     *     def get_merge_length(self):
     *         return 1             # <<<<<<<<<<<<<<
     *
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_int_1);
      __pyx_r = __pyx_int_1;
      goto __pyx_L0;

     1836:

     1837:     def make_block(self, values, items=None, ref_items=None, sparse_index=None,

    /* "pandas/internals.pyx":1837
     *         return 1
     *
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,             # <<<<<<<<<<<<<<
     *                    kind=None, dtype=None, fill_value=None, copy=False,
     *                    fastpath=True):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_37make_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_36make_block[] = " return a new block ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_37make_block = {__Pyx_NAMESTR("make_block"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_37make_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_36make_block)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_37make_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_sparse_index = 0;
      PyObject *__pyx_v_kind = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_fastpath = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("make_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_values,&__pyx_n_s_items,&__pyx_n_s_ref_items,&__pyx_n_s_sparse_index,&__pyx_n_s_kind,&__pyx_n_s_dtype,&__pyx_n_s_fill_value,&__pyx_n_s_copy,&__pyx_n_s_fastpath,0};
        PyObject* values[10] = {0,0,0,0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":1837
     *         return 1
     *
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,             # <<<<<<<<<<<<<<
     *                    kind=None, dtype=None, fill_value=None, copy=False,
     *                    fastpath=True):
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_36make_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_values, PyObject *__pyx_v_items, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_sparse_index, PyObject *__pyx_v_kind, PyObject *__pyx_v_dtype, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_copy, PyObject *__pyx_v_fastpath) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("make_block", 0);
      __Pyx_INCREF(__pyx_v_items);
      __Pyx_INCREF(__pyx_v_ref_items);
      __Pyx_INCREF(__pyx_v_dtype);
      __Pyx_INCREF(__pyx_v_fill_value);

      /* "pandas/internals.pyx":1837
     *         return 1
     *
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,             # <<<<<<<<<<<<<<
     *                    kind=None, dtype=None, fill_value=None, copy=False,
     *                    fastpath=True):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.make_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_ref_items);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1837
     *         return 1
     *
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,             # <<<<<<<<<<<<<<
     *                    kind=None, dtype=None, fill_value=None, copy=False,
     *                    fastpath=True):
     */
      __pyx_tuple__442 = PyTuple_Pack(11, __pyx_n_s_self, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_sparse_index, __pyx_n_s_kind, __pyx_n_s_dtype, __pyx_n_s_fill_value, __pyx_n_s_copy, __pyx_n_s_fastpath, __pyx_n_s_new_values); if (unlikely(!__pyx_tuple__442)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__442);
      __Pyx_GIVEREF(__pyx_tuple__442);
      __pyx_codeobj__443 = (PyObject*)__Pyx_PyCode_New(10, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__442, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_make_block, 1837, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__443)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1837
     *         return 1
     *
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,             # <<<<<<<<<<<<<<
     *                    kind=None, dtype=None, fill_value=None, copy=False,
     *                    fastpath=True):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_37make_block, 0, __pyx_n_s_SparseBlock_make_block, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__443)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__444);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_make_block, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__444 = PyTuple_Pack(8, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__444)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__444);
      __Pyx_GIVEREF(__pyx_tuple__444);

     1838:                    kind=None, dtype=None, fill_value=None, copy=False,

        /* "pandas/internals.pyx":1838
     *
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,
     *                    kind=None, dtype=None, fill_value=None, copy=False,             # <<<<<<<<<<<<<<
     *                    fastpath=True):
     *         """ return a new block """
     */
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_None));
        values[7] = ((PyObject *)((PyObject *)Py_None));
        values[8] = ((PyObject *)((PyObject *)Py_False));

     1839:                    fastpath=True):

        /* "pandas/internals.pyx":1839
     *     def make_block(self, values, items=None, ref_items=None, sparse_index=None,
     *                    kind=None, dtype=None, fill_value=None, copy=False,
     *                    fastpath=True):             # <<<<<<<<<<<<<<
     *         """ return a new block """
     *         if dtype is None:
     */
        values[9] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
            case  9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("make_block", 0, 2, 10, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_sparse_index);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_kind);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[6] = value; kw_args--; }
            }
            case  7:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[7] = value; kw_args--; }
            }
            case  8:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[8] = value; kw_args--; }
            }
            case  9:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[9] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "make_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case 10: values[9] = PyTuple_GET_ITEM(__pyx_args, 9);
            case  9: values[8] = PyTuple_GET_ITEM(__pyx_args, 8);
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_values = values[1];
        __pyx_v_items = values[2];
        __pyx_v_ref_items = values[3];
        __pyx_v_sparse_index = values[4];
        __pyx_v_kind = values[5];
        __pyx_v_dtype = values[6];
        __pyx_v_fill_value = values[7];
        __pyx_v_copy = values[8];
        __pyx_v_fastpath = values[9];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("make_block", 0, 2, 10, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1837; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.make_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_36make_block(__pyx_self, __pyx_v_self, __pyx_v_values, __pyx_v_items, __pyx_v_ref_items, __pyx_v_sparse_index, __pyx_v_kind, __pyx_v_dtype, __pyx_v_fill_value, __pyx_v_copy, __pyx_v_fastpath);

     1840:         """ return a new block """

     1841:         if dtype is None:

      /* "pandas/internals.pyx":1841
     *                    fastpath=True):
     *         """ return a new block """
     *         if dtype is None:             # <<<<<<<<<<<<<<
     *             dtype = self.dtype
     *         if fill_value is None:
     */
      __pyx_t_1 = (__pyx_v_dtype == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1842:             dtype = self.dtype

        /* "pandas/internals.pyx":1842
     *         """ return a new block """
     *         if dtype is None:
     *             dtype = self.dtype             # <<<<<<<<<<<<<<
     *         if fill_value is None:
     *             fill_value = self.fill_value
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1842; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_dtype, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1843:         if fill_value is None:

      /* "pandas/internals.pyx":1843
     *         if dtype is None:
     *             dtype = self.dtype
     *         if fill_value is None:             # <<<<<<<<<<<<<<
     *             fill_value = self.fill_value
     *         if items is None:
     */
      __pyx_t_2 = (__pyx_v_fill_value == Py_None);
      __pyx_t_1 = (__pyx_t_2 != 0);
      if (__pyx_t_1) {

     1844:             fill_value = self.fill_value

        /* "pandas/internals.pyx":1844
     *             dtype = self.dtype
     *         if fill_value is None:
     *             fill_value = self.fill_value             # <<<<<<<<<<<<<<
     *         if items is None:
     *             items = self.items
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1844; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     1845:         if items is None:

      /* "pandas/internals.pyx":1845
     *         if fill_value is None:
     *             fill_value = self.fill_value
     *         if items is None:             # <<<<<<<<<<<<<<
     *             items = self.items
     *         if ref_items is None:
     */
      __pyx_t_1 = (__pyx_v_items == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1846:             items = self.items

        /* "pandas/internals.pyx":1846
     *             fill_value = self.fill_value
     *         if items is None:
     *             items = self.items             # <<<<<<<<<<<<<<
     *         if ref_items is None:
     *             ref_items = self.ref_items
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1846; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_items, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L5;
      }
      __pyx_L5:;

     1847:         if ref_items is None:

      /* "pandas/internals.pyx":1847
     *         if items is None:
     *             items = self.items
     *         if ref_items is None:             # <<<<<<<<<<<<<<
     *             ref_items = self.ref_items
     *         new_values = SparseArray(values, sparse_index=sparse_index,
     */
      __pyx_t_2 = (__pyx_v_ref_items == Py_None);
      __pyx_t_1 = (__pyx_t_2 != 0);
      if (__pyx_t_1) {

     1848:             ref_items = self.ref_items

        /* "pandas/internals.pyx":1848
     *             items = self.items
     *         if ref_items is None:
     *             ref_items = self.ref_items             # <<<<<<<<<<<<<<
     *         new_values = SparseArray(values, sparse_index=sparse_index,
     *                                  kind=kind or self.kind, dtype=dtype,
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_ref_items, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L6;
      }
      __pyx_L6:;

     1849:         new_values = SparseArray(values, sparse_index=sparse_index,

      /* "pandas/internals.pyx":1849
     *         if ref_items is None:
     *             ref_items = self.ref_items
     *         new_values = SparseArray(values, sparse_index=sparse_index,             # <<<<<<<<<<<<<<
     *                                  kind=kind or self.kind, dtype=dtype,
     *                                  fill_value=fill_value, copy=copy)
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseArray); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_sparse_index, __pyx_v_sparse_index) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1849
     *         if ref_items is None:
     *             ref_items = self.ref_items
     *         new_values = SparseArray(values, sparse_index=sparse_index,             # <<<<<<<<<<<<<<
     *                                  kind=kind or self.kind, dtype=dtype,
     *                                  fill_value=fill_value, copy=copy)
     */
      __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_new_values = __pyx_t_7;
      __pyx_t_7 = 0;

     1850:                                  kind=kind or self.kind, dtype=dtype,

      /* "pandas/internals.pyx":1850
     *             ref_items = self.ref_items
     *         new_values = SparseArray(values, sparse_index=sparse_index,
     *                                  kind=kind or self.kind, dtype=dtype,             # <<<<<<<<<<<<<<
     *                                  fill_value=fill_value, copy=copy)
     *         return make_block(new_values, items, ref_items, ndim=self.ndim,
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_kind); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_1) {
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_kind); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_7 = __pyx_t_6;
        __pyx_t_6 = 0;
      } else {
        __Pyx_INCREF(__pyx_v_kind);
        __pyx_t_7 = __pyx_v_kind;
      }
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_kind, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1851:                                  fill_value=fill_value, copy=copy)

      /* "pandas/internals.pyx":1851
     *         new_values = SparseArray(values, sparse_index=sparse_index,
     *                                  kind=kind or self.kind, dtype=dtype,
     *                                  fill_value=fill_value, copy=copy)             # <<<<<<<<<<<<<<
     *         return make_block(new_values, items, ref_items, ndim=self.ndim,
     *                           fastpath=fastpath)
     */
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1852:         return make_block(new_values, items, ref_items, ndim=self.ndim,

      /* "pandas/internals.pyx":1852
     *                                  kind=kind or self.kind, dtype=dtype,
     *                                  fill_value=fill_value, copy=copy)
     *         return make_block(new_values, items, ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                           fastpath=fastpath)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_ndim, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

      /* "pandas/internals.pyx":1852
     *                                  kind=kind or self.kind, dtype=dtype,
     *                                  fill_value=fill_value, copy=copy)
     *         return make_block(new_values, items, ref_items, ndim=self.ndim,             # <<<<<<<<<<<<<<
     *                           fastpath=fastpath)
     *
     */
      __pyx_t_3 = PyObject_Call(__pyx_t_7, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1853:                           fastpath=fastpath)

      /* "pandas/internals.pyx":1853
     *                                  fill_value=fill_value, copy=copy)
     *         return make_block(new_values, items, ref_items, ndim=self.ndim,
     *                           fastpath=fastpath)             # <<<<<<<<<<<<<<
     *
     *     def interpolate(self, method='pad', axis=0, inplace=False,
     */
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fastpath, __pyx_v_fastpath) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1854:

     1855:     def interpolate(self, method='pad', axis=0, inplace=False,

    /* "pandas/internals.pyx":1855
     *                           fastpath=fastpath)
     *
     *     def interpolate(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                     limit=None, fill_value=None, **kwargs):
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_39interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_39interpolate = {__Pyx_NAMESTR("interpolate"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_39interpolate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_39interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_axis = 0;
      CYTHON_UNUSED PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_fill_value = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("interpolate (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_method,&__pyx_n_s_axis,&__pyx_n_s_inplace,&__pyx_n_s_limit,&__pyx_n_s_fill_value,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[1] = ((PyObject *)((PyObject*)__pyx_n_s_pad));
        values[2] = ((PyObject *)((PyObject *)__pyx_int_0));
        values[3] = ((PyObject *)((PyObject *)Py_False));

      /* "pandas/internals.pyx":1855
     *                           fastpath=fastpath)
     *
     *     def interpolate(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                     limit=None, fill_value=None, **kwargs):
     *
     */

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_38interpolate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_method, PyObject *__pyx_v_axis, CYTHON_UNUSED PyObject *__pyx_v_inplace, PyObject *__pyx_v_limit, PyObject *__pyx_v_fill_value, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("interpolate", 0);

      /* "pandas/internals.pyx":1855
     *                           fastpath=fastpath)
     *
     *     def interpolate(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                     limit=None, fill_value=None, **kwargs):
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1855
     *                           fastpath=fastpath)
     *
     *     def interpolate(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                     limit=None, fill_value=None, **kwargs):
     *
     */
      __pyx_tuple__445 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_method, __pyx_n_s_axis, __pyx_n_s_inplace, __pyx_n_s_limit, __pyx_n_s_fill_value, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_values); if (unlikely(!__pyx_tuple__445)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1855; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__445);
      __Pyx_GIVEREF(__pyx_tuple__445);
      __pyx_codeobj__446 = (PyObject*)__Pyx_PyCode_New(6, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__445, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_interpolate_2, 1855, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__446)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1855; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1855
     *                           fastpath=fastpath)
     *
     *     def interpolate(self, method='pad', axis=0, inplace=False,             # <<<<<<<<<<<<<<
     *                     limit=None, fill_value=None, **kwargs):
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_39interpolate, 0, __pyx_n_s_SparseBlock_interpolate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__446)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1855; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__447);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_interpolate_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1855; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__447 = PyTuple_Pack(5, ((PyObject*)__pyx_n_s_pad), ((PyObject *)__pyx_int_0), ((PyObject *)Py_False), ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__447)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1855; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__447);
      __Pyx_GIVEREF(__pyx_tuple__447);

     1856:                     limit=None, fill_value=None, **kwargs):

        /* "pandas/internals.pyx":1856
     *
     *     def interpolate(self, method='pad', axis=0, inplace=False,
     *                     limit=None, fill_value=None, **kwargs):             # <<<<<<<<<<<<<<
     *
     *         values = com.interpolate_2d(
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "interpolate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1855; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_method = values[1];
        __pyx_v_axis = values[2];
        __pyx_v_inplace = values[3];
        __pyx_v_limit = values[4];
        __pyx_v_fill_value = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("interpolate", 0, 1, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1855; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_38interpolate(__pyx_self, __pyx_v_self, __pyx_v_method, __pyx_v_axis, __pyx_v_inplace, __pyx_v_limit, __pyx_v_fill_value, __pyx_v_kwargs);

     1857:

     1858:         values = com.interpolate_2d(

      /* "pandas/internals.pyx":1858
     *                     limit=None, fill_value=None, **kwargs):
     *
     *         values = com.interpolate_2d(             # <<<<<<<<<<<<<<
     *             self.values.to_dense(), method, axis, limit, fill_value)
     *         return self.make_block(values, self.items, self.ref_items)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1858; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_interpolate_2d); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1858; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "pandas/internals.pyx":1858
     *                     limit=None, fill_value=None, **kwargs):
     *
     *         values = com.interpolate_2d(             # <<<<<<<<<<<<<<
     *             self.values.to_dense(), method, axis, limit, fill_value)
     *         return self.make_block(values, self.items, self.ref_items)
     */
      __pyx_t_3 = PyTuple_New(5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1858; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_method);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_method);
      __Pyx_GIVEREF(__pyx_v_method);
      __Pyx_INCREF(__pyx_v_axis);
      PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_axis);
      __Pyx_GIVEREF(__pyx_v_axis);
      __Pyx_INCREF(__pyx_v_limit);
      PyTuple_SET_ITEM(__pyx_t_3, 3, __pyx_v_limit);
      __Pyx_GIVEREF(__pyx_v_limit);
      __Pyx_INCREF(__pyx_v_fill_value);
      PyTuple_SET_ITEM(__pyx_t_3, 4, __pyx_v_fill_value);
      __Pyx_GIVEREF(__pyx_v_fill_value);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1858; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1859:             self.values.to_dense(), method, axis, limit, fill_value)

      /* "pandas/internals.pyx":1859
     *
     *         values = com.interpolate_2d(
     *             self.values.to_dense(), method, axis, limit, fill_value)             # <<<<<<<<<<<<<<
     *         return self.make_block(values, self.items, self.ref_items)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1859; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_to_dense); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1859; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1859; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     1860:         return self.make_block(values, self.items, self.ref_items)

      /* "pandas/internals.pyx":1860
     *         values = com.interpolate_2d(
     *             self.values.to_dense(), method, axis, limit, fill_value)
     *         return self.make_block(values, self.items, self.ref_items)             # <<<<<<<<<<<<<<
     *
     *     def fillna(self, value, inplace=False, downcast=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1860; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1860; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1860; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1860; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_3 = 0;
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1860; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     1861:

     1862:     def fillna(self, value, inplace=False, downcast=None):

    /* "pandas/internals.pyx":1862
     *         return self.make_block(values, self.items, self.ref_items)
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_41fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_41fillna = {__Pyx_NAMESTR("fillna"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_41fillna, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_41fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_inplace = 0;
      CYTHON_UNUSED PyObject *__pyx_v_downcast = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,&__pyx_n_s_inplace,&__pyx_n_s_downcast,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("fillna", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_downcast);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "fillna") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
        __pyx_v_inplace = values[2];
        __pyx_v_downcast = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("fillna", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_40fillna(__pyx_self, __pyx_v_self, __pyx_v_value, __pyx_v_inplace, __pyx_v_downcast);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_40fillna(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value, PyObject *__pyx_v_inplace, CYTHON_UNUSED PyObject *__pyx_v_downcast) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":1862
     *         return self.make_block(values, self.items, self.ref_items)
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1862
     *         return self.make_block(values, self.items, self.ref_items)
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */
      __pyx_tuple__448 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_value, __pyx_n_s_inplace, __pyx_n_s_downcast, __pyx_n_s_values); if (unlikely(!__pyx_tuple__448)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__448);
      __Pyx_GIVEREF(__pyx_tuple__448);
      __pyx_codeobj__449 = (PyObject*)__Pyx_PyCode_New(4, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__448, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fillna, 1862, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__449)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1862
     *         return self.make_block(values, self.items, self.ref_items)
     *
     *     def fillna(self, value, inplace=False, downcast=None):             # <<<<<<<<<<<<<<
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_41fillna, 0, __pyx_n_s_SparseBlock_fillna, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__449)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__450);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fillna, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__450 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__450)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__450);
      __Pyx_GIVEREF(__pyx_tuple__450);

     1863:         # we may need to upcast our fill to match our dtype

     1864:         if issubclass(self.dtype.type, np.floating):

      /* "pandas/internals.pyx":1864
     *     def fillna(self, value, inplace=False, downcast=None):
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):             # <<<<<<<<<<<<<<
     *             value = float(value)
     *         values = self.values if inplace else self.values.copy()
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_type); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_floating); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = PyObject_IsSubclass(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     1865:             value = float(value)

        /* "pandas/internals.pyx":1865
     *         # we may need to upcast our fill to match our dtype
     *         if issubclass(self.dtype.type, np.floating):
     *             value = float(value)             # <<<<<<<<<<<<<<
     *         values = self.values if inplace else self.values.copy()
     *         return [self.make_block(values.get_values(value), fill_value=value)]
     */
        __pyx_t_6 = __Pyx_PyObject_AsDouble(__pyx_v_value); if (unlikely(__pyx_t_6 == ((double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1865; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyFloat_FromDouble(__pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1865; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1866:         values = self.values if inplace else self.values.copy()

      /* "pandas/internals.pyx":1866
     *         if issubclass(self.dtype.type, np.floating):
     *             value = float(value)
     *         values = self.values if inplace else self.values.copy()             # <<<<<<<<<<<<<<
     *         return [self.make_block(values.get_values(value), fill_value=value)]
     *
     */
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_5) {
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __pyx_t_2;
        __pyx_t_2 = 0;
      } else {
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_copy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_3 = __pyx_t_2;
        __pyx_t_2 = 0;
      }
      __pyx_v_values = __pyx_t_3;
      __pyx_t_3 = 0;

     1867:         return [self.make_block(values.get_values(value), fill_value=value)]

      /* "pandas/internals.pyx":1867
     *             value = float(value)
     *         values = self.values if inplace else self.values.copy()
     *         return [self.make_block(values.get_values(value), fill_value=value)]             # <<<<<<<<<<<<<<
     *
     *     def shift(self, indexer, periods, axis=0):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_get_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_7 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7);
      __Pyx_GIVEREF(__pyx_t_7);
      __pyx_t_7 = 0;
      __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_fill_value, __pyx_v_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_7 = PyList_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      PyList_SET_ITEM(__pyx_t_7, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_r = __pyx_t_7;
      __pyx_t_7 = 0;
      goto __pyx_L0;

     1868:

     1869:     def shift(self, indexer, periods, axis=0):

    /* "pandas/internals.pyx":1869
     *         return [self.make_block(values.get_values(value), fill_value=value)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_43shift(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_42shift[] = " shift the block by periods ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_43shift = {__Pyx_NAMESTR("shift"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_43shift, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_42shift)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_43shift(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_periods = 0;
      CYTHON_UNUSED PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shift (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_periods,&__pyx_n_s_axis,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)__pyx_int_0));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("shift", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_periods)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("shift", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "shift") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_periods = values[2];
        __pyx_v_axis = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("shift", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.shift", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_42shift(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_periods, __pyx_v_axis);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_42shift(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, PyObject *__pyx_v_periods, CYTHON_UNUSED PyObject *__pyx_v_axis) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_fill_value = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shift", 0);

      /* "pandas/internals.pyx":1869
     *         return [self.make_block(values.get_values(value), fill_value=value)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.shift", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1869
     *         return [self.make_block(values.get_values(value), fill_value=value)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods """
     *
     */
      __pyx_tuple__451 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_periods, __pyx_n_s_axis, __pyx_n_s_new_values, __pyx_n_s_fill_value); if (unlikely(!__pyx_tuple__451)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__451);
      __Pyx_GIVEREF(__pyx_tuple__451);
      __pyx_codeobj__452 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__451, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shift, 1869, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__452)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1869
     *         return [self.make_block(values.get_values(value), fill_value=value)]
     *
     *     def shift(self, indexer, periods, axis=0):             # <<<<<<<<<<<<<<
     *         """ shift the block by periods """
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_43shift, 0, __pyx_n_s_SparseBlock_shift, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__452)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__453);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_shift, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__453 = PyTuple_Pack(1, ((PyObject *)__pyx_int_0)); if (unlikely(!__pyx_tuple__453)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1869; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__453);
      __Pyx_GIVEREF(__pyx_tuple__453);

     1870:         """ shift the block by periods """

     1871:

     1872:         new_values = self.values.to_dense().take(indexer)

      /* "pandas/internals.pyx":1872
     *         """ shift the block by periods """
     *
     *         new_values = self.values.to_dense().take(indexer)             # <<<<<<<<<<<<<<
     *         # convert integer to float if necessary. need to do a lot more than
     *         # that, handle boolean etc also
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_to_dense); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_take); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_new_values = __pyx_t_3;
      __pyx_t_3 = 0;

     1873:         # convert integer to float if necessary. need to do a lot more than

     1874:         # that, handle boolean etc also

     1875:         new_values, fill_value = com._maybe_upcast(new_values)

      /* "pandas/internals.pyx":1875
     *         # convert integer to float if necessary. need to do a lot more than
     *         # that, handle boolean etc also
     *         new_values, fill_value = com._maybe_upcast(new_values)             # <<<<<<<<<<<<<<
     *         if periods > 0:
     *             new_values[:periods] = fill_value
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_maybe_upcast); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
        PyObject* sequence = __pyx_t_2;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_3 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        index = 1; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __Pyx_DECREF_SET(__pyx_v_new_values, __pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_v_fill_value = __pyx_t_1;
      __pyx_t_1 = 0;

     1876:         if periods > 0:

      /* "pandas/internals.pyx":1876
     *         # that, handle boolean etc also
     *         new_values, fill_value = com._maybe_upcast(new_values)
     *         if periods > 0:             # <<<<<<<<<<<<<<
     *             new_values[:periods] = fill_value
     *         else:
     */
      __pyx_t_2 = PyObject_RichCompare(__pyx_v_periods, __pyx_int_0, Py_GT); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_6) {

     1877:             new_values[:periods] = fill_value

        /* "pandas/internals.pyx":1877
     *         new_values, fill_value = com._maybe_upcast(new_values)
     *         if periods > 0:
     *             new_values[:periods] = fill_value             # <<<<<<<<<<<<<<
     *         else:
     *             new_values[periods:] = fill_value
     */
        if (__Pyx_PyObject_SetSlice(__pyx_v_new_values, __pyx_v_fill_value, 0, 0, NULL, &__pyx_v_periods, NULL, 0, 0, 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L5;
      }
      /*else*/ {

     1878:         else:

     1879:             new_values[periods:] = fill_value

        /* "pandas/internals.pyx":1879
     *             new_values[:periods] = fill_value
     *         else:
     *             new_values[periods:] = fill_value             # <<<<<<<<<<<<<<
     *         return [self.make_block(new_values)]
     *
     */
        if (__Pyx_PyObject_SetSlice(__pyx_v_new_values, __pyx_v_fill_value, 0, 0, &__pyx_v_periods, NULL, NULL, 0, 0, 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1879; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __pyx_L5:;

     1880:         return [self.make_block(new_values)]

      /* "pandas/internals.pyx":1880
     *         else:
     *             new_values[periods:] = fill_value
     *         return [self.make_block(new_values)]             # <<<<<<<<<<<<<<
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1880; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1880; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1880; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1880; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1881:

     1882:     def take(self, indexer, ref_items, new_axis, axis=1):

    /* "pandas/internals.pyx":1882
     *         return [self.make_block(new_values)]
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         """ going to take our items
     *             along the long dimension"""
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_45take(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_44take[] = " going to take our items\n            along the long dimension";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_45take = {__Pyx_NAMESTR("take"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_45take, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_44take)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_45take(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      CYTHON_UNUSED PyObject *__pyx_v_ref_items = 0;
      CYTHON_UNUSED PyObject *__pyx_v_new_axis = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_ref_items,&__pyx_n_s_new_axis,&__pyx_n_s_axis,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)__pyx_int_1));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "take") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_ref_items = values[2];
        __pyx_v_new_axis = values[3];
        __pyx_v_axis = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("take", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.take", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_44take(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_ref_items, __pyx_v_new_axis, __pyx_v_axis);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_44take(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, CYTHON_UNUSED PyObject *__pyx_v_ref_items, CYTHON_UNUSED PyObject *__pyx_v_new_axis, PyObject *__pyx_v_axis) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take", 0);

      /* "pandas/internals.pyx":1882
     *         return [self.make_block(new_values)]
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         """ going to take our items
     *             along the long dimension"""
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.take", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1882
     *         return [self.make_block(new_values)]
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         """ going to take our items
     *             along the long dimension"""
     */
      __pyx_tuple__454 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_ref_items, __pyx_n_s_new_axis, __pyx_n_s_axis); if (unlikely(!__pyx_tuple__454)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__454);
      __Pyx_GIVEREF(__pyx_tuple__454);
      __pyx_codeobj__455 = (PyObject*)__Pyx_PyCode_New(5, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__454, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_take, 1882, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__455)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1882
     *         return [self.make_block(new_values)]
     *
     *     def take(self, indexer, ref_items, new_axis, axis=1):             # <<<<<<<<<<<<<<
     *         """ going to take our items
     *             along the long dimension"""
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_45take, 0, __pyx_n_s_SparseBlock_take, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__455)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__456);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_take, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__456 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__456)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1882; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__456);
      __Pyx_GIVEREF(__pyx_tuple__456);

     1883:         """ going to take our items

     1884:             along the long dimension"""

     1885:         if axis < 1:

      /* "pandas/internals.pyx":1885
     *         """ going to take our items
     *             along the long dimension"""
     *         if axis < 1:             # <<<<<<<<<<<<<<
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_1, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     1886:             raise AssertionError('axis must be at least 1, got %d' % axis)

        /* "pandas/internals.pyx":1886
     *             along the long dimension"""
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)             # <<<<<<<<<<<<<<
     *
     *         return [self.make_block(self.values.take(indexer))]
     */
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_axis_must_be_at_least_1_got_d, __pyx_v_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     1887:

     1888:         return [self.make_block(self.values.take(indexer))]

      /* "pandas/internals.pyx":1888
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *
     *         return [self.make_block(self.values.take(indexer))]             # <<<<<<<<<<<<<<
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_take); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyList_SET_ITEM(__pyx_t_3, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     1889:

     1890:     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,

    /* "pandas/internals.pyx":1890
     *         return [self.make_block(self.values.take(indexer))]
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_47reindex_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_46reindex_axis[] = "\n        Reindex using pre-computed indexer information\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_47reindex_axis = {__Pyx_NAMESTR("reindex_axis"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_47reindex_axis, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_46reindex_axis)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_47reindex_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      CYTHON_UNUSED PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_fill_value = 0;
      CYTHON_UNUSED PyObject *__pyx_v_limit = 0;
      CYTHON_UNUSED PyObject *__pyx_v_mask_info = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_axis,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_mask_info,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)__pyx_int_1));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":1890
     *         return [self.make_block(self.values.take(indexer))]
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_46reindex_axis(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, CYTHON_UNUSED PyObject *__pyx_v_method, PyObject *__pyx_v_axis, PyObject *__pyx_v_fill_value, CYTHON_UNUSED PyObject *__pyx_v_limit, CYTHON_UNUSED PyObject *__pyx_v_mask_info) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis", 0);
      __Pyx_INCREF(__pyx_v_fill_value);

      /* "pandas/internals.pyx":1890
     *         return [self.make_block(self.values.take(indexer))]
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.reindex_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1890
     *         return [self.make_block(self.values.take(indexer))]
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */
      __pyx_tuple__457 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_axis, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_mask_info); if (unlikely(!__pyx_tuple__457)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__457);
      __Pyx_GIVEREF(__pyx_tuple__457);
      __pyx_codeobj__458 = (PyObject*)__Pyx_PyCode_New(7, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__457, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_axis, 1890, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__458)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1890
     *         return [self.make_block(self.values.take(indexer))]
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                      limit=None, mask_info=None):
     *         """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_47reindex_axis, 0, __pyx_n_s_SparseBlock_reindex_axis, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__458)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__459);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_axis, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__459 = PyTuple_Pack(5, ((PyObject *)Py_None), ((PyObject *)__pyx_int_1), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__459)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__459);
      __Pyx_GIVEREF(__pyx_tuple__459);

     1891:                      limit=None, mask_info=None):

        /* "pandas/internals.pyx":1891
     *
     *     def reindex_axis(self, indexer, method=None, axis=1, fill_value=None,
     *                      limit=None, mask_info=None):             # <<<<<<<<<<<<<<
     *         """
     *         Reindex using pre-computed indexer information
     */
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_axis", 0, 2, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mask_info);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_axis") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_method = values[2];
        __pyx_v_axis = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_limit = values[5];
        __pyx_v_mask_info = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_axis", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1890; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.reindex_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_46reindex_axis(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_method, __pyx_v_axis, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_mask_info);

     1892:         """

     1893:         Reindex using pre-computed indexer information

     1894:         """

     1895:         if axis < 1:

      /* "pandas/internals.pyx":1895
     *         Reindex using pre-computed indexer information
     *         """
     *         if axis < 1:             # <<<<<<<<<<<<<<
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_1, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1895; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1895; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     1896:             raise AssertionError('axis must be at least 1, got %d' % axis)

        /* "pandas/internals.pyx":1896
     *         """
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)             # <<<<<<<<<<<<<<
     *
     *         # taking on the 0th axis always here
     */
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_axis_must_be_at_least_1_got_d, __pyx_v_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     1897:

     1898:         # taking on the 0th axis always here

     1899:         if fill_value is None:

      /* "pandas/internals.pyx":1899
     *
     *         # taking on the 0th axis always here
     *         if fill_value is None:             # <<<<<<<<<<<<<<
     *             fill_value = self.fill_value
     *         return self.make_block(self.values.take(indexer), items=self.items,
     */
      __pyx_t_2 = (__pyx_v_fill_value == Py_None);
      __pyx_t_4 = (__pyx_t_2 != 0);
      if (__pyx_t_4) {

     1900:             fill_value = self.fill_value

        /* "pandas/internals.pyx":1900
     *         # taking on the 0th axis always here
     *         if fill_value is None:
     *             fill_value = self.fill_value             # <<<<<<<<<<<<<<
     *         return self.make_block(self.values.take(indexer), items=self.items,
     *                                fill_value=fill_value)
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1900; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     1901:         return self.make_block(self.values.take(indexer), items=self.items,

      /* "pandas/internals.pyx":1901
     *         if fill_value is None:
     *             fill_value = self.fill_value
     *         return self.make_block(self.values.take(indexer), items=self.items,             # <<<<<<<<<<<<<<
     *                                fill_value=fill_value)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_take); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_items, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

      /* "pandas/internals.pyx":1901
     *         if fill_value is None:
     *             fill_value = self.fill_value
     *         return self.make_block(self.values.take(indexer), items=self.items,             # <<<<<<<<<<<<<<
     *                                fill_value=fill_value)
     *
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_3, __pyx_t_6); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     1902:                                fill_value=fill_value)

      /* "pandas/internals.pyx":1902
     *             fill_value = self.fill_value
     *         return self.make_block(self.values.take(indexer), items=self.items,
     *                                fill_value=fill_value)             # <<<<<<<<<<<<<<
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,
     */
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1901; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1903:

     1904:     def reindex_items_from(self, new_ref_items, indexer=None, method=None,

    /* "pandas/internals.pyx":1904
     *                                fill_value=fill_value)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_49reindex_items_from(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_48reindex_items_from[] = "\n        Reindex to only those items contained in the input set of items\n\n        E.g. if you have ['a', 'b'], and the input items is ['b', 'c', 'd'],\n        then the resulting items will be ['b']\n\n        Returns\n        -------\n        reindexed : Block\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_49reindex_items_from = {__Pyx_NAMESTR("reindex_items_from"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_49reindex_items_from, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_48reindex_items_from)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_49reindex_items_from(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_ref_items = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_items_from (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_ref_items,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_copy,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":1904
     *                                fill_value=fill_value)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_48reindex_items_from(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_ref_items, PyObject *__pyx_v_indexer, PyObject *__pyx_v_method, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_limit, PyObject *__pyx_v_copy) {
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_items_from", 0);
      __Pyx_INCREF(__pyx_v_new_ref_items);
      __Pyx_INCREF(__pyx_v_indexer);
      __Pyx_INCREF(__pyx_v_fill_value);

      /* "pandas/internals.pyx":1904
     *                                fill_value=fill_value)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.reindex_items_from", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_new_ref_items);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1904
     *                                fill_value=fill_value)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */
      __pyx_tuple__460 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_new_ref_items, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_copy, __pyx_n_s_new_items, __pyx_n_s_new_values); if (unlikely(!__pyx_tuple__460)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__460);
      __Pyx_GIVEREF(__pyx_tuple__460);
      __pyx_codeobj__461 = (PyObject*)__Pyx_PyCode_New(7, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__460, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_items_from, 1904, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__461)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1904
     *                                fill_value=fill_value)
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                            fill_value=None, limit=None, copy=True):
     *         """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_49reindex_items_from, 0, __pyx_n_s_SparseBlock_reindex_items_from, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__461)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__462);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_items_from, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__462 = PyTuple_Pack(5, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__462)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__462);
      __Pyx_GIVEREF(__pyx_tuple__462);

     1905:                            fill_value=None, limit=None, copy=True):

        /* "pandas/internals.pyx":1905
     *
     *     def reindex_items_from(self, new_ref_items, indexer=None, method=None,
     *                            fill_value=None, limit=None, copy=True):             # <<<<<<<<<<<<<<
     *         """
     *         Reindex to only those items contained in the input set of items
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_items_from", 0, 2, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_items_from") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_ref_items = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_method = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_limit = values[5];
        __pyx_v_copy = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_items_from", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1904; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.reindex_items_from", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_48reindex_items_from(__pyx_self, __pyx_v_self, __pyx_v_new_ref_items, __pyx_v_indexer, __pyx_v_method, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_copy);

     1906:         """

     1907:         Reindex to only those items contained in the input set of items

     1908:

     1909:         E.g. if you have ['a', 'b'], and the input items is ['b', 'c', 'd'],

     1910:         then the resulting items will be ['b']

     1911:

     1912:         Returns

     1913:         -------

     1914:         reindexed : Block

     1915:         """

     1916:

     1917:         # 1-d always

     1918:         if indexer is None:

      /* "pandas/internals.pyx":1918
     *
     *         # 1-d always
     *         if indexer is None:             # <<<<<<<<<<<<<<
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,
     *                                                         limit=limit)
     */
      __pyx_t_1 = (__pyx_v_indexer == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1919:             new_ref_items, indexer = self.items.reindex(new_ref_items,

        /* "pandas/internals.pyx":1919
     *         # 1-d always
     *         if indexer is None:
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,             # <<<<<<<<<<<<<<
     *                                                         limit=limit)
     *         if indexer is None:
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reindex); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_new_ref_items);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_ref_items);
        __Pyx_GIVEREF(__pyx_v_new_ref_items);
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

        /* "pandas/internals.pyx":1919
     *         # 1-d always
     *         if indexer is None:
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,             # <<<<<<<<<<<<<<
     *                                                         limit=limit)
     *         if indexer is None:
     */
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_3, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
          PyObject* sequence = __pyx_t_6;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_5 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_3);
          #else
          __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          #endif
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_4 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext;
          index = 0; __pyx_t_5 = __pyx_t_7(__pyx_t_4); if (unlikely(!__pyx_t_5)) goto __pyx_L4_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_5);
          index = 1; __pyx_t_3 = __pyx_t_7(__pyx_t_4); if (unlikely(!__pyx_t_3)) goto __pyx_L4_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_7 = NULL;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L5_unpacking_done;
          __pyx_L4_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_7 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L5_unpacking_done:;
        }
        __Pyx_DECREF_SET(__pyx_v_new_ref_items, __pyx_t_5);
        __pyx_t_5 = 0;
        __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     1920:                                                         limit=limit)

        /* "pandas/internals.pyx":1920
     *         if indexer is None:
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,
     *                                                         limit=limit)             # <<<<<<<<<<<<<<
     *         if indexer is None:
     *             indexer = np.arange(len(self.items))
     */
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1921:         if indexer is None:

      /* "pandas/internals.pyx":1921
     *             new_ref_items, indexer = self.items.reindex(new_ref_items,
     *                                                         limit=limit)
     *         if indexer is None:             # <<<<<<<<<<<<<<
     *             indexer = np.arange(len(self.items))
     *
     */
      __pyx_t_2 = (__pyx_v_indexer == Py_None);
      __pyx_t_1 = (__pyx_t_2 != 0);
      if (__pyx_t_1) {

     1922:             indexer = np.arange(len(self.items))

        /* "pandas/internals.pyx":1922
     *                                                         limit=limit)
     *         if indexer is None:
     *             indexer = np.arange(len(self.items))             # <<<<<<<<<<<<<<
     *
     *         # single block
     */
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_arange); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_8 = PyObject_Length(__pyx_t_6); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyInt_FromSsize_t(__pyx_t_8); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_6);
        __pyx_t_6 = 0;
        goto __pyx_L6;
      }
      __pyx_L6:;

     1923:

     1924:         # single block

     1925:         if self.ndim == 1:

      /* "pandas/internals.pyx":1925
     *
     *         # single block
     *         if self.ndim == 1:             # <<<<<<<<<<<<<<
     *
     *             new_items = new_ref_items
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = PyObject_RichCompare(__pyx_t_6, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (__pyx_t_1) {

     1926:

     1927:             new_items = new_ref_items

        /* "pandas/internals.pyx":1927
     *         if self.ndim == 1:
     *
     *             new_items = new_ref_items             # <<<<<<<<<<<<<<
     *             new_values = com.take_1d(self.values.values, indexer)
     *
     */
        __Pyx_INCREF(__pyx_v_new_ref_items);
        __pyx_v_new_items = __pyx_v_new_ref_items;

     1928:             new_values = com.take_1d(self.values.values, indexer)

        /* "pandas/internals.pyx":1928
     *
     *             new_items = new_ref_items
     *             new_values = com.take_1d(self.values.values, indexer)             # <<<<<<<<<<<<<<
     *
     *         else:
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_take_1d); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_new_values = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L7;
      }
      /*else*/ {

     1929:

     1930:         else:

     1931:

     1932:             # if we don't overlap at all, then don't include this block

     1933:             new_items = self.items & new_ref_items

        /* "pandas/internals.pyx":1933
     *
     *             # if we don't overlap at all, then don't include this block
     *             new_items = self.items & new_ref_items             # <<<<<<<<<<<<<<
     *             if not len(new_items):
     *                 return None
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = PyNumber_And(__pyx_t_3, __pyx_v_new_ref_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_v_new_items = __pyx_t_5;
        __pyx_t_5 = 0;

     1934:             if not len(new_items):

        /* "pandas/internals.pyx":1934
     *             # if we don't overlap at all, then don't include this block
     *             new_items = self.items & new_ref_items
     *             if not len(new_items):             # <<<<<<<<<<<<<<
     *                 return None
     *
     */
        __pyx_t_8 = PyObject_Length(__pyx_v_new_items); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = ((!(__pyx_t_8 != 0)) != 0);
        if (__pyx_t_1) {

     1935:                 return None

          /* "pandas/internals.pyx":1935
     *             new_items = self.items & new_ref_items
     *             if not len(new_items):
     *                 return None             # <<<<<<<<<<<<<<
     *
     *             new_values = self.values.values
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(Py_None);
          __pyx_r = Py_None;
          goto __pyx_L0;
        }

     1936:

     1937:             new_values = self.values.values

        /* "pandas/internals.pyx":1937
     *                 return None
     *
     *             new_values = self.values.values             # <<<<<<<<<<<<<<
     *
     *         # fill if needed
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1937; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1937; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_new_values = __pyx_t_3;
        __pyx_t_3 = 0;
      }
      __pyx_L7:;

     1938:

     1939:         # fill if needed

     1940:         if method is not None or limit is not None:

      /* "pandas/internals.pyx":1940
     *
     *         # fill if needed
     *         if method is not None or limit is not None:             # <<<<<<<<<<<<<<
     *             if fill_value is None:
     *                 fill_value = self.fill_value
     */
      __pyx_t_1 = (__pyx_v_method != Py_None);
      if (!(__pyx_t_1 != 0)) {
        __pyx_t_2 = (__pyx_v_limit != Py_None);
        __pyx_t_9 = (__pyx_t_2 != 0);
      } else {
        __pyx_t_9 = (__pyx_t_1 != 0);
      }
      if (__pyx_t_9) {

     1941:             if fill_value is None:

        /* "pandas/internals.pyx":1941
     *         # fill if needed
     *         if method is not None or limit is not None:
     *             if fill_value is None:             # <<<<<<<<<<<<<<
     *                 fill_value = self.fill_value
     *             new_values = com.interpolate_2d(new_values, method=method,
     */
        __pyx_t_9 = (__pyx_v_fill_value == Py_None);
        __pyx_t_1 = (__pyx_t_9 != 0);
        if (__pyx_t_1) {

     1942:                 fill_value = self.fill_value

          /* "pandas/internals.pyx":1942
     *         if method is not None or limit is not None:
     *             if fill_value is None:
     *                 fill_value = self.fill_value             # <<<<<<<<<<<<<<
     *             new_values = com.interpolate_2d(new_values, method=method,
     *                                             limit=limit, fill_value=fill_value)
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1942; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_3);
          __pyx_t_3 = 0;
          goto __pyx_L10;
        }
        __pyx_L10:;

     1943:             new_values = com.interpolate_2d(new_values, method=method,

        /* "pandas/internals.pyx":1943
     *             if fill_value is None:
     *                 fill_value = self.fill_value
     *             new_values = com.interpolate_2d(new_values, method=method,             # <<<<<<<<<<<<<<
     *                                             limit=limit, fill_value=fill_value)
     *
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_interpolate_2d); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_new_values);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_values);
        __Pyx_GIVEREF(__pyx_v_new_values);
        __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_method, __pyx_v_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":1943
     *             if fill_value is None:
     *                 fill_value = self.fill_value
     *             new_values = com.interpolate_2d(new_values, method=method,             # <<<<<<<<<<<<<<
     *                                             limit=limit, fill_value=fill_value)
     *
     */
        __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_3, __pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF_SET(__pyx_v_new_values, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L9;
      }
      __pyx_L9:;

     1944:                                             limit=limit, fill_value=fill_value)

        /* "pandas/internals.pyx":1944
     *                 fill_value = self.fill_value
     *             new_values = com.interpolate_2d(new_values, method=method,
     *                                             limit=limit, fill_value=fill_value)             # <<<<<<<<<<<<<<
     *
     *         return self.make_block(new_values, items=new_items,
     */
        if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1945:

     1946:         return self.make_block(new_values, items=new_items,

      /* "pandas/internals.pyx":1946
     *                                             limit=limit, fill_value=fill_value)
     *
     *         return self.make_block(new_values, items=new_items,             # <<<<<<<<<<<<<<
     *                                ref_items=new_ref_items, copy=copy)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_new_values);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_new_values);
      __Pyx_GIVEREF(__pyx_v_new_values);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_items, __pyx_v_new_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1946
     *                                             limit=limit, fill_value=fill_value)
     *
     *         return self.make_block(new_values, items=new_items,             # <<<<<<<<<<<<<<
     *                                ref_items=new_ref_items, copy=copy)
     *
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     1947:                                ref_items=new_ref_items, copy=copy)

      /* "pandas/internals.pyx":1947
     *
     *         return self.make_block(new_values, items=new_items,
     *                                ref_items=new_ref_items, copy=copy)             # <<<<<<<<<<<<<<
     *
     *     def sparse_reindex(self, new_index):
     */
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_ref_items, __pyx_v_new_ref_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1948:

     1949:     def sparse_reindex(self, new_index):

    /* "pandas/internals.pyx":1949
     *                                ref_items=new_ref_items, copy=copy)
     *
     *     def sparse_reindex(self, new_index):             # <<<<<<<<<<<<<<
     *         """ sparse reindex and return a new block
     *             current reindex only works for float64 dtype! """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_51sparse_reindex(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_11SparseBlock_50sparse_reindex[] = " sparse reindex and return a new block\n            current reindex only works for float64 dtype! ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_51sparse_reindex = {__Pyx_NAMESTR("sparse_reindex"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_51sparse_reindex, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_11SparseBlock_50sparse_reindex)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_51sparse_reindex(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_index = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sparse_reindex (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_index,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_index)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("sparse_reindex", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1949; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "sparse_reindex") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1949; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_new_index = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("sparse_reindex", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1949; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.sparse_reindex", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_50sparse_reindex(__pyx_self, __pyx_v_self, __pyx_v_new_index);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_50sparse_reindex(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_index) {
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("sparse_reindex", 0);

      /* "pandas/internals.pyx":1949
     *                                ref_items=new_ref_items, copy=copy)
     *
     *     def sparse_reindex(self, new_index):             # <<<<<<<<<<<<<<
     *         """ sparse reindex and return a new block
     *             current reindex only works for float64 dtype! """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.sparse_reindex", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1949
     *                                ref_items=new_ref_items, copy=copy)
     *
     *     def sparse_reindex(self, new_index):             # <<<<<<<<<<<<<<
     *         """ sparse reindex and return a new block
     *             current reindex only works for float64 dtype! """
     */
      __pyx_tuple__463 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_new_index, __pyx_n_s_values); if (unlikely(!__pyx_tuple__463)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__463);
      __Pyx_GIVEREF(__pyx_tuple__463);

      /* "pandas/internals.pyx":1949
     *                                ref_items=new_ref_items, copy=copy)
     *
     *     def sparse_reindex(self, new_index):             # <<<<<<<<<<<<<<
     *         """ sparse reindex and return a new block
     *             current reindex only works for float64 dtype! """
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_51sparse_reindex, 0, __pyx_n_s_SparseBlock_sparse_reindex, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__464)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_sparse_reindex, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__464 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__463, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_sparse_reindex, 1949, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__464)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1950:         """ sparse reindex and return a new block

     1951:             current reindex only works for float64 dtype! """

     1952:         values = self.values

      /* "pandas/internals.pyx":1952
     *         """ sparse reindex and return a new block
     *             current reindex only works for float64 dtype! """
     *         values = self.values             # <<<<<<<<<<<<<<
     *         values = values.sp_index.to_int_index().reindex(
     *             values.sp_values.astype('float64'), values.fill_value, new_index)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1952; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;

     1953:         values = values.sp_index.to_int_index().reindex(

      /* "pandas/internals.pyx":1953
     *             current reindex only works for float64 dtype! """
     *         values = self.values
     *         values = values.sp_index.to_int_index().reindex(             # <<<<<<<<<<<<<<
     *             values.sp_values.astype('float64'), values.fill_value, new_index)
     *         return self.make_block(values, sparse_index=new_index)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_sp_index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1953; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_to_int_index); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1953; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1953; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_reindex); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1953; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "pandas/internals.pyx":1953
     *             current reindex only works for float64 dtype! """
     *         values = self.values
     *         values = values.sp_index.to_int_index().reindex(             # <<<<<<<<<<<<<<
     *             values.sp_values.astype('float64'), values.fill_value, new_index)
     *         return self.make_block(values, sparse_index=new_index)
     */
      __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1953; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_index);
      PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_new_index);
      __Pyx_GIVEREF(__pyx_v_new_index);
      __pyx_t_1 = 0;
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1953; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_3);
      __pyx_t_3 = 0;

     1954:             values.sp_values.astype('float64'), values.fill_value, new_index)

      /* "pandas/internals.pyx":1954
     *         values = self.values
     *         values = values.sp_index.to_int_index().reindex(
     *             values.sp_values.astype('float64'), values.fill_value, new_index)             # <<<<<<<<<<<<<<
     *         return self.make_block(values, sparse_index=new_index)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_sp_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_astype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_tuple__50, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_fill_value); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":1954
     *         values = self.values
     *         values = values.sp_index.to_int_index().reindex(
     *             values.sp_values.astype('float64'), values.fill_value, new_index)             # <<<<<<<<<<<<<<
     *         return self.make_block(values, sparse_index=new_index)
     *
     */
      __pyx_tuple__50 = PyTuple_Pack(1, __pyx_n_s_float64); if (unlikely(!__pyx_tuple__50)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__50);
      __Pyx_GIVEREF(__pyx_tuple__50);

     1955:         return self.make_block(values, sparse_index=new_index)

      /* "pandas/internals.pyx":1955
     *         values = values.sp_index.to_int_index().reindex(
     *             values.sp_values.astype('float64'), values.fill_value, new_index)
     *         return self.make_block(values, sparse_index=new_index)             # <<<<<<<<<<<<<<
     *
     *     def split_block_at(self, item):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_sparse_index, __pyx_v_new_index) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1955; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     1956:

     1957:     def split_block_at(self, item):

    /* "pandas/internals.pyx":1957
     *         return self.make_block(values, sparse_index=new_index)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         if len(self.items) == 1 and item == self.items[0]:
     *             return []
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_53split_block_at(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_53split_block_at = {__Pyx_NAMESTR("split_block_at"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_53split_block_at, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_53split_block_at(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("split_block_at (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("split_block_at", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1957; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "split_block_at") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1957; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("split_block_at", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1957; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock.split_block_at", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_52split_block_at(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_52split_block_at(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("split_block_at", 0);

      /* "pandas/internals.pyx":1957
     *         return self.make_block(values, sparse_index=new_index)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         if len(self.items) == 1 and item == self.items[0]:
     *             return []
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.SparseBlock.split_block_at", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1957
     *         return self.make_block(values, sparse_index=new_index)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         if len(self.items) == 1 and item == self.items[0]:
     *             return []
     */
      __pyx_tuple__465 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_item); if (unlikely(!__pyx_tuple__465)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__465);
      __Pyx_GIVEREF(__pyx_tuple__465);

      /* "pandas/internals.pyx":1957
     *         return self.make_block(values, sparse_index=new_index)
     *
     *     def split_block_at(self, item):             # <<<<<<<<<<<<<<
     *         if len(self.items) == 1 and item == self.items[0]:
     *             return []
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_53split_block_at, 0, __pyx_n_s_SparseBlock_split_block_at, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__466)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_split_block_at, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__466 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__465, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_split_block_at, 1957, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__466)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1958:         if len(self.items) == 1 and item == self.items[0]:

      /* "pandas/internals.pyx":1958
     *
     *     def split_block_at(self, item):
     *         if len(self.items) == 1 and item == self.items[0]:             # <<<<<<<<<<<<<<
     *             return []
     *         return super(SparseBlock, self).split_block_at(self, item)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 == 1);
      if (__pyx_t_3) {
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1958; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_RichCompare(__pyx_v_item, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_3;
      }
      if (__pyx_t_6) {

     1959:             return []

        /* "pandas/internals.pyx":1959
     *     def split_block_at(self, item):
     *         if len(self.items) == 1 and item == self.items[0]:
     *             return []             # <<<<<<<<<<<<<<
     *         return super(SparseBlock, self).split_block_at(self, item)
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        goto __pyx_L0;
      }

     1960:         return super(SparseBlock, self).split_block_at(self, item)

      /* "pandas/internals.pyx":1960
     *         if len(self.items) == 1 and item == self.items[0]:
     *             return []
     *         return super(SparseBlock, self).split_block_at(self, item)             # <<<<<<<<<<<<<<
     *
     *     def _try_cast_result(self, result, dtype=None):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseBlock); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1960; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1960; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_self);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_builtin_super, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1960; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_split_block_at); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1960; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1960; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_self);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_7 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1960; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_7;
      __pyx_t_7 = 0;
      goto __pyx_L0;

     1961:

     1962:     def _try_cast_result(self, result, dtype=None):

    /* "pandas/internals.pyx":1962
     *         return super(SparseBlock, self).split_block_at(self, item)
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         return result
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_55_try_cast_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11SparseBlock_55_try_cast_result = {__Pyx_NAMESTR("_try_cast_result"), (PyCFunction)__pyx_pw_6pandas_9internals_11SparseBlock_55_try_cast_result, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11SparseBlock_55_try_cast_result(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_result = 0;
      CYTHON_UNUSED PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast_result (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_result,&__pyx_n_s_dtype,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_result)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_try_cast_result", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_try_cast_result") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_result = values[1];
        __pyx_v_dtype = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_try_cast_result", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SparseBlock._try_cast_result", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_11SparseBlock_54_try_cast_result(__pyx_self, __pyx_v_self, __pyx_v_result, __pyx_v_dtype);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_11SparseBlock_54_try_cast_result(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, PyObject *__pyx_v_result, CYTHON_UNUSED PyObject *__pyx_v_dtype) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_try_cast_result", 0);

      /* "pandas/internals.pyx":1962
     *         return super(SparseBlock, self).split_block_at(self, item)
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         return result
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1962
     *         return super(SparseBlock, self).split_block_at(self, item)
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         return result
     *
     */
      __pyx_tuple__467 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_result, __pyx_n_s_dtype); if (unlikely(!__pyx_tuple__467)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__467);
      __Pyx_GIVEREF(__pyx_tuple__467);
      __pyx_codeobj__468 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__467, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_try_cast_result, 1962, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__468)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":1962
     *         return super(SparseBlock, self).split_block_at(self, item)
     *
     *     def _try_cast_result(self, result, dtype=None):             # <<<<<<<<<<<<<<
     *         return result
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_11SparseBlock_55_try_cast_result, 0, __pyx_n_s_SparseBlock__try_cast_result, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__468)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__469);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_try_cast_result, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__469 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__469)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__469);
      __Pyx_GIVEREF(__pyx_tuple__469);

     1963:         return result

      /* "pandas/internals.pyx":1963
     *
     *     def _try_cast_result(self, result, dtype=None):
     *         return result             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     1964:

     1965:

     1966: def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,

    /* "pandas/internals.pyx":1966
     *
     *
     * def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,             # <<<<<<<<<<<<<<
     *                fastpath=False, placement=None):
     *     if klass is None:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_1make_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_1make_block = {__Pyx_NAMESTR("make_block"), (PyCFunction)__pyx_pw_6pandas_9internals_1make_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_1make_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_klass = 0;
      PyObject *__pyx_v_ndim = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v_fastpath = 0;
      PyObject *__pyx_v_placement = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("make_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_values,&__pyx_n_s_items,&__pyx_n_s_ref_items,&__pyx_n_s_klass,&__pyx_n_s_ndim,&__pyx_n_s_dtype,&__pyx_n_s_fastpath,&__pyx_n_s_placement,0};
        PyObject* values[8] = {0,0,0,0,0,0,0,0};
        values[3] = ((PyObject *)Py_None);
        values[4] = ((PyObject *)Py_None);
        values[5] = ((PyObject *)Py_None);

      /* "pandas/internals.pyx":1966
     *
     *
     * def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,             # <<<<<<<<<<<<<<
     *                fastpath=False, placement=None):
     *     if klass is None:
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_make_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_values, PyObject *__pyx_v_items, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_klass, PyObject *__pyx_v_ndim, PyObject *__pyx_v_dtype, PyObject *__pyx_v_fastpath, PyObject *__pyx_v_placement) {
      PyObject *__pyx_v_vtype = NULL;
      PyObject *__pyx_v_flat = NULL;
      PyObject *__pyx_v_inferred_type = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("make_block", 0);
      __Pyx_INCREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_klass);
      __Pyx_INCREF(__pyx_v_dtype);

      /* "pandas/internals.pyx":1966
     *
     *
     * def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,             # <<<<<<<<<<<<<<
     *                fastpath=False, placement=None):
     *     if klass is None:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.make_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_vtype);
      __Pyx_XDECREF(__pyx_v_flat);
      __Pyx_XDECREF(__pyx_v_inferred_type);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_klass);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":1966
     *
     *
     * def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,             # <<<<<<<<<<<<<<
     *                fastpath=False, placement=None):
     *     if klass is None:
     */
      __pyx_tuple__470 = PyTuple_Pack(11, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_klass, __pyx_n_s_ndim, __pyx_n_s_dtype, __pyx_n_s_fastpath, __pyx_n_s_placement, __pyx_n_s_vtype, __pyx_n_s_flat, __pyx_n_s_inferred_type); if (unlikely(!__pyx_tuple__470)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__470);
      __Pyx_GIVEREF(__pyx_tuple__470);

      /* "pandas/internals.pyx":1966
     *
     *
     * def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,             # <<<<<<<<<<<<<<
     *                fastpath=False, placement=None):
     *     if klass is None:
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_1make_block, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_make_block, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__471 = (PyObject*)__Pyx_PyCode_New(8, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__470, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_make_block, 1966, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__471)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     1967:                fastpath=False, placement=None):

        /* "pandas/internals.pyx":1967
     *
     * def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,
     *                fastpath=False, placement=None):             # <<<<<<<<<<<<<<
     *     if klass is None:
     *         dtype = dtype or values.dtype
     */
        values[6] = ((PyObject *)Py_False);
        values[7] = ((PyObject *)Py_None);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("make_block", 0, 3, 8, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("make_block", 0, 3, 8, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_klass);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ndim);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[6] = value; kw_args--; }
            }
            case  7:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_placement);
              if (value) { values[7] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "make_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_values = values[0];
        __pyx_v_items = values[1];
        __pyx_v_ref_items = values[2];
        __pyx_v_klass = values[3];
        __pyx_v_ndim = values[4];
        __pyx_v_dtype = values[5];
        __pyx_v_fastpath = values[6];
        __pyx_v_placement = values[7];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("make_block", 0, 3, 8, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1966; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.make_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_make_block(__pyx_self, __pyx_v_values, __pyx_v_items, __pyx_v_ref_items, __pyx_v_klass, __pyx_v_ndim, __pyx_v_dtype, __pyx_v_fastpath, __pyx_v_placement);

     1968:     if klass is None:

      /* "pandas/internals.pyx":1968
     * def make_block(values, items, ref_items, klass=None, ndim=None, dtype=None,
     *                fastpath=False, placement=None):
     *     if klass is None:             # <<<<<<<<<<<<<<
     *         dtype = dtype or values.dtype
     *         vtype = dtype.type
     */
      __pyx_t_1 = (__pyx_v_klass == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     1969:         dtype = dtype or values.dtype

        /* "pandas/internals.pyx":1969
     *                fastpath=False, placement=None):
     *     if klass is None:
     *         dtype = dtype or values.dtype             # <<<<<<<<<<<<<<
     *         vtype = dtype.type
     *
     */
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_dtype); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (!__pyx_t_2) {
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = __pyx_t_3;
          __pyx_t_3 = 0;
        } else {
          __Pyx_INCREF(__pyx_v_dtype);
          __pyx_t_4 = __pyx_v_dtype;
        }
        __Pyx_DECREF_SET(__pyx_v_dtype, __pyx_t_4);
        __pyx_t_4 = 0;

     1970:         vtype = dtype.type

        /* "pandas/internals.pyx":1970
     *     if klass is None:
     *         dtype = dtype or values.dtype
     *         vtype = dtype.type             # <<<<<<<<<<<<<<
     *
     *         if isinstance(values, SparseArray):
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_dtype, __pyx_n_s_type); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1970; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_v_vtype = __pyx_t_4;
        __pyx_t_4 = 0;

     1971:

     1972:         if isinstance(values, SparseArray):

        /* "pandas/internals.pyx":1972
     *         vtype = dtype.type
     *
     *         if isinstance(values, SparseArray):             # <<<<<<<<<<<<<<
     *             klass = SparseBlock
     *         elif issubclass(vtype, np.floating):
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseArray); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = PyObject_IsInstance(__pyx_v_values, __pyx_t_4); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_1 = (__pyx_t_2 != 0);
        if (__pyx_t_1) {

     1973:             klass = SparseBlock

          /* "pandas/internals.pyx":1973
     *
     *         if isinstance(values, SparseArray):
     *             klass = SparseBlock             # <<<<<<<<<<<<<<
     *         elif issubclass(vtype, np.floating):
     *             klass = FloatBlock
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1973; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_4);
          __pyx_t_4 = 0;
          goto __pyx_L4;
        }

     1974:         elif issubclass(vtype, np.floating):

        /* "pandas/internals.pyx":1974
     *         if isinstance(values, SparseArray):
     *             klass = SparseBlock
     *         elif issubclass(vtype, np.floating):             # <<<<<<<<<<<<<<
     *             klass = FloatBlock
     *         elif (issubclass(vtype, np.integer) and
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_floating); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_1 = PyObject_IsSubclass(__pyx_v_vtype, __pyx_t_3); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_2 = (__pyx_t_1 != 0);
        if (__pyx_t_2) {

     1975:             klass = FloatBlock

          /* "pandas/internals.pyx":1975
     *             klass = SparseBlock
     *         elif issubclass(vtype, np.floating):
     *             klass = FloatBlock             # <<<<<<<<<<<<<<
     *         elif (issubclass(vtype, np.integer) and
     *                 issubclass(vtype, np.timedelta64)):
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_FloatBlock); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_3);
          __pyx_t_3 = 0;
          goto __pyx_L4;
        }

     1976:         elif (issubclass(vtype, np.integer) and

        /* "pandas/internals.pyx":1976
     *         elif issubclass(vtype, np.floating):
     *             klass = FloatBlock
     *         elif (issubclass(vtype, np.integer) and             # <<<<<<<<<<<<<<
     *                 issubclass(vtype, np.timedelta64)):
     *             klass = TimeDeltaBlock
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1976; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_integer); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1976; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_2 = PyObject_IsSubclass(__pyx_v_vtype, __pyx_t_4); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1976; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if ((__pyx_t_2 != 0)) {

     1977:                 issubclass(vtype, np.timedelta64)):

          /* "pandas/internals.pyx":1977
     *             klass = FloatBlock
     *         elif (issubclass(vtype, np.integer) and
     *                 issubclass(vtype, np.timedelta64)):             # <<<<<<<<<<<<<<
     *             klass = TimeDeltaBlock
     *         elif (issubclass(vtype, np.integer) and
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1977; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_timedelta64); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1977; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_1 = PyObject_IsSubclass(__pyx_v_vtype, __pyx_t_3); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1977; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_5 = (__pyx_t_1 != 0);
        } else {
          __pyx_t_5 = (__pyx_t_2 != 0);
        }
        if (__pyx_t_5) {

     1978:             klass = TimeDeltaBlock

          /* "pandas/internals.pyx":1978
     *         elif (issubclass(vtype, np.integer) and
     *                 issubclass(vtype, np.timedelta64)):
     *             klass = TimeDeltaBlock             # <<<<<<<<<<<<<<
     *         elif (issubclass(vtype, np.integer) and
     *                 not issubclass(vtype, np.datetime64)):
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_TimeDeltaBlock); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1978; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_3);
          __pyx_t_3 = 0;
          goto __pyx_L4;
        }

     1979:         elif (issubclass(vtype, np.integer) and

        /* "pandas/internals.pyx":1979
     *                 issubclass(vtype, np.timedelta64)):
     *             klass = TimeDeltaBlock
     *         elif (issubclass(vtype, np.integer) and             # <<<<<<<<<<<<<<
     *                 not issubclass(vtype, np.datetime64)):
     *             klass = IntBlock
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1979; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_integer); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1979; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_5 = PyObject_IsSubclass(__pyx_v_vtype, __pyx_t_4); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1979; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if ((__pyx_t_5 != 0)) {

     1980:                 not issubclass(vtype, np.datetime64)):

          /* "pandas/internals.pyx":1980
     *             klass = TimeDeltaBlock
     *         elif (issubclass(vtype, np.integer) and
     *                 not issubclass(vtype, np.datetime64)):             # <<<<<<<<<<<<<<
     *             klass = IntBlock
     *         elif dtype == np.bool_:
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_datetime64); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_2 = PyObject_IsSubclass(__pyx_v_vtype, __pyx_t_3); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_1 = ((!(__pyx_t_2 != 0)) != 0);
          __pyx_t_2 = __pyx_t_1;
        } else {
          __pyx_t_2 = (__pyx_t_5 != 0);
        }
        if (__pyx_t_2) {

     1981:             klass = IntBlock

          /* "pandas/internals.pyx":1981
     *         elif (issubclass(vtype, np.integer) and
     *                 not issubclass(vtype, np.datetime64)):
     *             klass = IntBlock             # <<<<<<<<<<<<<<
     *         elif dtype == np.bool_:
     *             klass = BoolBlock
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_IntBlock); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1981; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_3);
          __pyx_t_3 = 0;
          goto __pyx_L4;
        }

     1982:         elif dtype == np.bool_:

        /* "pandas/internals.pyx":1982
     *                 not issubclass(vtype, np.datetime64)):
     *             klass = IntBlock
     *         elif dtype == np.bool_:             # <<<<<<<<<<<<<<
     *             klass = BoolBlock
     *         elif issubclass(vtype, np.datetime64):
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1982; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_bool); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1982; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_RichCompare(__pyx_v_dtype, __pyx_t_4, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1982; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1982; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_2) {

     1983:             klass = BoolBlock

          /* "pandas/internals.pyx":1983
     *             klass = IntBlock
     *         elif dtype == np.bool_:
     *             klass = BoolBlock             # <<<<<<<<<<<<<<
     *         elif issubclass(vtype, np.datetime64):
     *             klass = DatetimeBlock
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_BoolBlock); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1983; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_3);
          __pyx_t_3 = 0;
          goto __pyx_L4;
        }

     1984:         elif issubclass(vtype, np.datetime64):

        /* "pandas/internals.pyx":1984
     *         elif dtype == np.bool_:
     *             klass = BoolBlock
     *         elif issubclass(vtype, np.datetime64):             # <<<<<<<<<<<<<<
     *             klass = DatetimeBlock
     *         elif issubclass(vtype, np.complexfloating):
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1984; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_datetime64); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1984; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_2 = PyObject_IsSubclass(__pyx_v_vtype, __pyx_t_4); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1984; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = (__pyx_t_2 != 0);
        if (__pyx_t_5) {

     1985:             klass = DatetimeBlock

          /* "pandas/internals.pyx":1985
     *             klass = BoolBlock
     *         elif issubclass(vtype, np.datetime64):
     *             klass = DatetimeBlock             # <<<<<<<<<<<<<<
     *         elif issubclass(vtype, np.complexfloating):
     *             klass = ComplexBlock
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_DatetimeBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1985; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_4);
          __pyx_t_4 = 0;
          goto __pyx_L4;
        }

     1986:         elif issubclass(vtype, np.complexfloating):

        /* "pandas/internals.pyx":1986
     *         elif issubclass(vtype, np.datetime64):
     *             klass = DatetimeBlock
     *         elif issubclass(vtype, np.complexfloating):             # <<<<<<<<<<<<<<
     *             klass = ComplexBlock
     *
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1986; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_complexfloating); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1986; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = PyObject_IsSubclass(__pyx_v_vtype, __pyx_t_3); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1986; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_2 = (__pyx_t_5 != 0);
        if (__pyx_t_2) {

     1987:             klass = ComplexBlock

          /* "pandas/internals.pyx":1987
     *             klass = DatetimeBlock
     *         elif issubclass(vtype, np.complexfloating):
     *             klass = ComplexBlock             # <<<<<<<<<<<<<<
     *
     *         # try to infer a DatetimeBlock, or set to an ObjectBlock
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ComplexBlock); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_3);
          __pyx_t_3 = 0;
          goto __pyx_L4;
        }
        /*else*/ {

     1988:

     1989:         # try to infer a DatetimeBlock, or set to an ObjectBlock

     1990:         else:

     1991:

     1992:             if np.prod(values.shape):

          /* "pandas/internals.pyx":1992
     *         else:
     *
     *             if np.prod(values.shape):             # <<<<<<<<<<<<<<
     *                 flat = values.ravel()
     *
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_prod); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1992; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          if (__pyx_t_2) {

     1993:                 flat = values.ravel()

            /* "pandas/internals.pyx":1993
     *
     *             if np.prod(values.shape):
     *                 flat = values.ravel()             # <<<<<<<<<<<<<<
     *
     *                 # try with just the first element; we just need to see if
     */
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ravel); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1993; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1993; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_v_flat = __pyx_t_6;
            __pyx_t_6 = 0;

     1994:

     1995:                 # try with just the first element; we just need to see if

     1996:                 # this is a datetime or not

     1997:                 inferred_type = lib.infer_dtype(flat[0:1])

            /* "pandas/internals.pyx":1997
     *                 # try with just the first element; we just need to see if
     *                 # this is a datetime or not
     *                 inferred_type = lib.infer_dtype(flat[0:1])             # <<<<<<<<<<<<<<
     *                 if inferred_type in ['datetime', 'datetime64']:
     *
     */
            __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_lib); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_infer_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = __Pyx_PyObject_GetSlice(__pyx_v_flat, 0, 1, NULL, NULL, &__pyx_slice__51, 1, 1, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_6);
            __Pyx_GIVEREF(__pyx_t_6);
            __pyx_t_6 = 0;
            __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_v_inferred_type = __pyx_t_6;
            __pyx_t_6 = 0;

      /* "pandas/internals.pyx":1997
     *                 # try with just the first element; we just need to see if
     *                 # this is a datetime or not
     *                 inferred_type = lib.infer_dtype(flat[0:1])             # <<<<<<<<<<<<<<
     *                 if inferred_type in ['datetime', 'datetime64']:
     *
     */
      __pyx_slice__51 = PySlice_New(__pyx_int_0, __pyx_int_1, Py_None); if (unlikely(!__pyx_slice__51)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__51);
      __Pyx_GIVEREF(__pyx_slice__51);

     1998:                 if inferred_type in ['datetime', 'datetime64']:

            /* "pandas/internals.pyx":1998
     *                 # this is a datetime or not
     *                 inferred_type = lib.infer_dtype(flat[0:1])
     *                 if inferred_type in ['datetime', 'datetime64']:             # <<<<<<<<<<<<<<
     *
     *                     # we have an object array that has been inferred as
     */
            __Pyx_INCREF(__pyx_v_inferred_type);
            __pyx_t_6 = __pyx_v_inferred_type;
            __pyx_t_4 = PyObject_RichCompare(__pyx_t_6, __pyx_n_s_datetime, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_2 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            if (!((int)__pyx_t_2)) {
              __pyx_t_4 = PyObject_RichCompare(__pyx_t_6, __pyx_n_s_datetime64, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely((__pyx_t_5 == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              __pyx_t_1 = ((int)__pyx_t_5);
            } else {
              __pyx_t_1 = ((int)__pyx_t_2);
            }
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_2 = (__pyx_t_1 != 0);
            if (__pyx_t_2) {

     1999:

     2000:                     # we have an object array that has been inferred as

     2001:                     # datetime, so convert it

     2002:                     try:

              /* "pandas/internals.pyx":2002
     *                     # we have an object array that has been inferred as
     *                     # datetime, so convert it
     *                     try:             # <<<<<<<<<<<<<<
     *                         values = tslib.array_to_datetime(
     *                             flat).reshape(values.shape)
     */
              {
                /*try:*/ {

     2003:                         values = tslib.array_to_datetime(

                  /* "pandas/internals.pyx":2003
     *                     # datetime, so convert it
     *                     try:
     *                         values = tslib.array_to_datetime(             # <<<<<<<<<<<<<<
     *                             flat).reshape(values.shape)
     *                         if issubclass(values.dtype.type, np.datetime64):
     */
                  __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2003; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_6);
                  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_array_to_datetime); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2003; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_4);
                  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

                  /* "pandas/internals.pyx":2004
     *                     try:
     *                         values = tslib.array_to_datetime(
     *                             flat).reshape(values.shape)             # <<<<<<<<<<<<<<
     *                         if issubclass(values.dtype.type, np.datetime64):
     *                             klass = DatetimeBlock
     */
                  __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2003; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_6);
                  __Pyx_INCREF(__pyx_v_flat);
                  PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_flat);
                  __Pyx_GIVEREF(__pyx_v_flat);

                  /* "pandas/internals.pyx":2003
     *                     # datetime, so convert it
     *                     try:
     *                         values = tslib.array_to_datetime(             # <<<<<<<<<<<<<<
     *                             flat).reshape(values.shape)
     *                         if issubclass(values.dtype.type, np.datetime64):
     */
                  __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2003; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     2004:                             flat).reshape(values.shape)

                  /* "pandas/internals.pyx":2004
     *                     try:
     *                         values = tslib.array_to_datetime(
     *                             flat).reshape(values.shape)             # <<<<<<<<<<<<<<
     *                         if issubclass(values.dtype.type, np.datetime64):
     *                             klass = DatetimeBlock
     */
                  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_reshape); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2004; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_6);
                  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2004; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2004; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_4);
                  PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
                  __Pyx_GIVEREF(__pyx_t_3);
                  __pyx_t_3 = 0;
                  __pyx_t_3 = PyObject_Call(__pyx_t_6, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2004; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
                  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                  __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_3);
                  __pyx_t_3 = 0;

     2005:                         if issubclass(values.dtype.type, np.datetime64):

                  /* "pandas/internals.pyx":2005
     *                         values = tslib.array_to_datetime(
     *                             flat).reshape(values.shape)
     *                         if issubclass(values.dtype.type, np.datetime64):             # <<<<<<<<<<<<<<
     *                             klass = DatetimeBlock
     *                     except:  # it already object, so leave it
     */
                  __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2005; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_type); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2005; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_4);
                  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                  __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2005; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_datetime64); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2005; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_GOTREF(__pyx_t_6);
                  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                  __pyx_t_2 = PyObject_IsSubclass(__pyx_t_4, __pyx_t_6); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2005; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                  __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
                  __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
                  __pyx_t_1 = (__pyx_t_2 != 0);
                  if (__pyx_t_1) {

     2006:                             klass = DatetimeBlock

                    /* "pandas/internals.pyx":2006
     *                             flat).reshape(values.shape)
     *                         if issubclass(values.dtype.type, np.datetime64):
     *                             klass = DatetimeBlock             # <<<<<<<<<<<<<<
     *                     except:  # it already object, so leave it
     *                         pass
     */
                    __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_DatetimeBlock); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2006; __pyx_clineno = __LINE__; goto __pyx_L7_error;}
                    __Pyx_GOTREF(__pyx_t_6);
                    __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_6);
                    __pyx_t_6 = 0;
                    goto __pyx_L15;
                  }
                  __pyx_L15:;
                }
                __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
                __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
                __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
                goto __pyx_L14_try_end;
                __pyx_L7_error:;
                __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
                __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
                __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;

     2007:                     except:  # it already object, so leave it

                /* "pandas/internals.pyx":2007
     *                         if issubclass(values.dtype.type, np.datetime64):
     *                             klass = DatetimeBlock
     *                     except:  # it already object, so leave it             # <<<<<<<<<<<<<<
     *                         pass
     *
     */
                /*except:*/ {
                  PyErr_Restore(0,0,0);
                  goto __pyx_L8_exception_handled;
                }
                __pyx_L8_exception_handled:;
                __Pyx_XGIVEREF(__pyx_t_7);
                __Pyx_XGIVEREF(__pyx_t_8);
                __Pyx_XGIVEREF(__pyx_t_9);
                __Pyx_ExceptionReset(__pyx_t_7, __pyx_t_8, __pyx_t_9);
                __pyx_L14_try_end:;
              }
              goto __pyx_L6;
            }
            __pyx_L6:;
            goto __pyx_L5;
          }
          __pyx_L5:;

     2008:                         pass

     2009:

     2010:             if klass is None:

          /* "pandas/internals.pyx":2010
     *                         pass
     *
     *             if klass is None:             # <<<<<<<<<<<<<<
     *                 klass = ObjectBlock
     *
     */
          __pyx_t_1 = (__pyx_v_klass == Py_None);
          __pyx_t_2 = (__pyx_t_1 != 0);
          if (__pyx_t_2) {

     2011:                 klass = ObjectBlock

            /* "pandas/internals.pyx":2011
     *
     *             if klass is None:
     *                 klass = ObjectBlock             # <<<<<<<<<<<<<<
     *
     *     return klass(values, items, ref_items, ndim=ndim, fastpath=fastpath,
     */
            __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_ObjectBlock); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2011; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF_SET(__pyx_v_klass, __pyx_t_6);
            __pyx_t_6 = 0;
            goto __pyx_L16;
          }
          __pyx_L16:;
        }
        __pyx_L4:;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2012:

     2013:     return klass(values, items, ref_items, ndim=ndim, fastpath=fastpath,

      /* "pandas/internals.pyx":2013
     *                 klass = ObjectBlock
     *
     *     return klass(values, items, ref_items, ndim=ndim, fastpath=fastpath,             # <<<<<<<<<<<<<<
     *                  placement=placement)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_ndim, __pyx_v_ndim) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fastpath, __pyx_v_fastpath) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2013
     *                 klass = ObjectBlock
     *
     *     return klass(values, items, ref_items, ndim=ndim, fastpath=fastpath,             # <<<<<<<<<<<<<<
     *                  placement=placement)
     *
     */
      __pyx_t_3 = PyObject_Call(__pyx_v_klass, __pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     2014:                  placement=placement)

      /* "pandas/internals.pyx":2014
     *
     *     return klass(values, items, ref_items, ndim=ndim, fastpath=fastpath,
     *                  placement=placement)             # <<<<<<<<<<<<<<
     *
     *
     */
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2015:

     2016:

     2017: # TODO: flexible with index=None and/or items=None

     2018:

     2019:

     2020: class BlockManager(PandasObject):

      /* "pandas/internals.pyx":2020
     *
     *
     * class BlockManager(PandasObject):             # <<<<<<<<<<<<<<
     *
     *     """
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_PandasObject); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2020; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2020; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_CalculateMetaclass(NULL, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2020; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_1, __pyx_t_2, __pyx_n_s_BlockManager, __pyx_n_s_BlockManager, (PyObject *) NULL, __pyx_n_s_pandas_internals, __pyx_kp_s_Core_internal_data_structure_to); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2020; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":2020
     *
     *
     * class BlockManager(PandasObject):             # <<<<<<<<<<<<<<
     *
     *     """
     */
      __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_1, __pyx_n_s_BlockManager, __pyx_t_2, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2020; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_BlockManager, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2020; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2021:

     2022:     """

     2023:     Core internal data structure to implement DataFrame

     2024:

     2025:     Manage a bunch of labeled 2D mixed-type ndarrays. Essentially it's a

     2026:     lightweight blocked set of labeled data to be manipulated by the DataFrame

     2027:     public API class

     2028:

     2029:     Parameters

     2030:     ----------

     2031:

     2032:

     2033:     Notes

     2034:     -----

     2035:     This is *not* a public API class

     2036:     """

     2037:     __slots__ = ['axes', 'blocks', '_ndim', '_shape', '_known_consolidated',

      /* "pandas/internals.pyx":2037
     *     This is *not* a public API class
     *     """
     *     __slots__ = ['axes', 'blocks', '_ndim', '_shape', '_known_consolidated',             # <<<<<<<<<<<<<<
     *                  '_is_consolidated', '_has_sparse', '_ref_locs', '_items_map']
     *
     */
      __pyx_t_4 = PyList_New(9); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2037; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_n_s_axes);
      PyList_SET_ITEM(__pyx_t_4, 0, __pyx_n_s_axes);
      __Pyx_GIVEREF(__pyx_n_s_axes);
      __Pyx_INCREF(__pyx_n_s_blocks);
      PyList_SET_ITEM(__pyx_t_4, 1, __pyx_n_s_blocks);
      __Pyx_GIVEREF(__pyx_n_s_blocks);
      __Pyx_INCREF(__pyx_n_s_ndim_2);
      PyList_SET_ITEM(__pyx_t_4, 2, __pyx_n_s_ndim_2);
      __Pyx_GIVEREF(__pyx_n_s_ndim_2);
      __Pyx_INCREF(__pyx_n_s_shape_2);
      PyList_SET_ITEM(__pyx_t_4, 3, __pyx_n_s_shape_2);
      __Pyx_GIVEREF(__pyx_n_s_shape_2);
      __Pyx_INCREF(__pyx_n_s_known_consolidated);
      PyList_SET_ITEM(__pyx_t_4, 4, __pyx_n_s_known_consolidated);
      __Pyx_GIVEREF(__pyx_n_s_known_consolidated);
      __Pyx_INCREF(__pyx_n_s_is_consolidated);
      PyList_SET_ITEM(__pyx_t_4, 5, __pyx_n_s_is_consolidated);
      __Pyx_GIVEREF(__pyx_n_s_is_consolidated);
      __Pyx_INCREF(__pyx_n_s_has_sparse);
      PyList_SET_ITEM(__pyx_t_4, 6, __pyx_n_s_has_sparse);
      __Pyx_GIVEREF(__pyx_n_s_has_sparse);
      __Pyx_INCREF(__pyx_n_s_ref_locs);
      PyList_SET_ITEM(__pyx_t_4, 7, __pyx_n_s_ref_locs);
      __Pyx_GIVEREF(__pyx_n_s_ref_locs);
      __Pyx_INCREF(__pyx_n_s_items_map);
      PyList_SET_ITEM(__pyx_t_4, 8, __pyx_n_s_items_map);
      __Pyx_GIVEREF(__pyx_n_s_items_map);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_slots, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2037; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     2038:                  '_is_consolidated', '_has_sparse', '_ref_locs', '_items_map']

     2039:

     2040:     def __init__(self, blocks, axes, do_integrity_check=True, fastpath=True):

    /* "pandas/internals.pyx":2040
     *                  '_is_consolidated', '_has_sparse', '_ref_locs', '_items_map']
     *
     *     def __init__(self, blocks, axes, do_integrity_check=True, fastpath=True):             # <<<<<<<<<<<<<<
     *         self.axes = [_ensure_index(ax) for ax in axes]
     *         self.blocks = blocks
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_1__init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_1__init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_v_do_integrity_check = 0;
      CYTHON_UNUSED PyObject *__pyx_v_fastpath = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_blocks,&__pyx_n_s_axes,&__pyx_n_s_do_integrity_check,&__pyx_n_s_fastpath,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_do_integrity_check);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_blocks = values[1];
        __pyx_v_axes = values[2];
        __pyx_v_do_integrity_check = values[3];
        __pyx_v_fastpath = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager___init__(__pyx_self, __pyx_v_self, __pyx_v_blocks, __pyx_v_axes, __pyx_v_do_integrity_check, __pyx_v_fastpath);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_blocks, PyObject *__pyx_v_axes, PyObject *__pyx_v_do_integrity_check, CYTHON_UNUSED PyObject *__pyx_v_fastpath) {
      PyObject *__pyx_v_ndim = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_ax = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__", 0);

      /* "pandas/internals.pyx":2040
     *                  '_is_consolidated', '_has_sparse', '_ref_locs', '_items_map']
     *
     *     def __init__(self, blocks, axes, do_integrity_check=True, fastpath=True):             # <<<<<<<<<<<<<<
     *         self.axes = [_ensure_index(ax) for ax in axes]
     *         self.blocks = blocks
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ndim);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_ax);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2040
     *                  '_is_consolidated', '_has_sparse', '_ref_locs', '_items_map']
     *
     *     def __init__(self, blocks, axes, do_integrity_check=True, fastpath=True):             # <<<<<<<<<<<<<<
     *         self.axes = [_ensure_index(ax) for ax in axes]
     *         self.blocks = blocks
     */
      __pyx_tuple__472 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_blocks, __pyx_n_s_axes, __pyx_n_s_do_integrity_check, __pyx_n_s_fastpath, __pyx_n_s_ndim, __pyx_n_s_block, __pyx_n_s_ax); if (unlikely(!__pyx_tuple__472)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__472);
      __Pyx_GIVEREF(__pyx_tuple__472);
      __pyx_codeobj__473 = (PyObject*)__Pyx_PyCode_New(5, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__472, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_init, 2040, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__473)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2040
     *                  '_is_consolidated', '_has_sparse', '_ref_locs', '_items_map']
     *
     *     def __init__(self, blocks, axes, do_integrity_check=True, fastpath=True):             # <<<<<<<<<<<<<<
     *         self.axes = [_ensure_index(ax) for ax in axes]
     *         self.blocks = blocks
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_1__init__, 0, __pyx_n_s_BlockManager___init, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__473)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__474);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_init, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__474 = PyTuple_Pack(2, ((PyObject *)Py_True), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__474)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2040; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__474);
      __Pyx_GIVEREF(__pyx_tuple__474);

     2041:         self.axes = [_ensure_index(ax) for ax in axes]

      /* "pandas/internals.pyx":2041
     *
     *     def __init__(self, blocks, axes, do_integrity_check=True, fastpath=True):
     *         self.axes = [_ensure_index(ax) for ax in axes]             # <<<<<<<<<<<<<<
     *         self.blocks = blocks
     *
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_v_axes) || PyTuple_CheckExact(__pyx_v_axes)) {
        __pyx_t_2 = __pyx_v_axes; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_5 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_v_ax, __pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_ax);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_ax);
        __Pyx_GIVEREF(__pyx_v_ax);
        __pyx_t_7 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_7))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_axes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2041; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2042:         self.blocks = blocks

      /* "pandas/internals.pyx":2042
     *     def __init__(self, blocks, axes, do_integrity_check=True, fastpath=True):
     *         self.axes = [_ensure_index(ax) for ax in axes]
     *         self.blocks = blocks             # <<<<<<<<<<<<<<
     *
     *         ndim = self.ndim
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_blocks, __pyx_v_blocks) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2042; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2043:

     2044:         ndim = self.ndim

      /* "pandas/internals.pyx":2044
     *         self.blocks = blocks
     *
     *         ndim = self.ndim             # <<<<<<<<<<<<<<
     *         for block in blocks:
     *             if not block.is_sparse and ndim != block.ndim:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_ndim = __pyx_t_1;
      __pyx_t_1 = 0;

     2045:         for block in blocks:

      /* "pandas/internals.pyx":2045
     *
     *         ndim = self.ndim
     *         for block in blocks:             # <<<<<<<<<<<<<<
     *             if not block.is_sparse and ndim != block.ndim:
     *                 raise AssertionError(('Number of Block dimensions (%d) must '
     */
      if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
        __pyx_t_1 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2045; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2045; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2045; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2045; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2045; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_4(__pyx_t_1);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2045; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_2);
        __pyx_t_2 = 0;

     2046:             if not block.is_sparse and ndim != block.ndim:

        /* "pandas/internals.pyx":2046
     *         ndim = self.ndim
     *         for block in blocks:
     *             if not block.is_sparse and ndim != block.ndim:             # <<<<<<<<<<<<<<
     *                 raise AssertionError(('Number of Block dimensions (%d) must '
     *                                       'equal number of axes (%d)')
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_is_sparse); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_9 = (!__pyx_t_8);
        if (__pyx_t_9) {
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_7 = PyObject_RichCompare(__pyx_v_ndim, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_7); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_10 = __pyx_t_8;
        } else {
          __pyx_t_10 = __pyx_t_9;
        }
        if (__pyx_t_10) {

     2047:                 raise AssertionError(('Number of Block dimensions (%d) must '

          /* "pandas/internals.pyx":2047
     *         for block in blocks:
     *             if not block.is_sparse and ndim != block.ndim:
     *                 raise AssertionError(('Number of Block dimensions (%d) must '             # <<<<<<<<<<<<<<
     *                                       'equal number of axes (%d)')
     *                                      % (block.ndim, ndim))
     */
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2047; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_7);
          __Pyx_GIVEREF(__pyx_t_7);
          __pyx_t_7 = 0;
          __pyx_t_7 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_2, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2047; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_Raise(__pyx_t_7, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2047; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2048:                                       'equal number of axes (%d)')

     2049:                                      % (block.ndim, ndim))

          /* "pandas/internals.pyx":2049
     *                 raise AssertionError(('Number of Block dimensions (%d) must '
     *                                       'equal number of axes (%d)')
     *                                      % (block.ndim, ndim))             # <<<<<<<<<<<<<<
     *
     *         if do_integrity_check:
     */
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ndim); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2049; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2049; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_7);
          __Pyx_GIVEREF(__pyx_t_7);
          __Pyx_INCREF(__pyx_v_ndim);
          PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_ndim);
          __Pyx_GIVEREF(__pyx_v_ndim);
          __pyx_t_7 = 0;
          __pyx_t_7 = __Pyx_PyString_Format(__pyx_kp_s_Number_of_Block_dimensions_d_mus, __pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2049; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2050:

     2051:         if do_integrity_check:

      /* "pandas/internals.pyx":2051
     *                                      % (block.ndim, ndim))
     *
     *         if do_integrity_check:             # <<<<<<<<<<<<<<
     *             self._verify_integrity()
     *
     */
      __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_do_integrity_check); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2051; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_10) {

     2052:             self._verify_integrity()

        /* "pandas/internals.pyx":2052
     *
     *         if do_integrity_check:
     *             self._verify_integrity()             # <<<<<<<<<<<<<<
     *
     *         self._has_sparse = False
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_verify_integrity); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2052; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_7 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2052; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L8;
      }
      __pyx_L8:;

     2053:

     2054:         self._has_sparse = False

      /* "pandas/internals.pyx":2054
     *             self._verify_integrity()
     *
     *         self._has_sparse = False             # <<<<<<<<<<<<<<
     *         self._consolidate_check()
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_has_sparse, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2054; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2055:         self._consolidate_check()

      /* "pandas/internals.pyx":2055
     *
     *         self._has_sparse = False
     *         self._consolidate_check()             # <<<<<<<<<<<<<<
     *
     *         # we have a duplicate items index, setup the block maps
     */
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_check); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2055; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_1 = PyObject_Call(__pyx_t_7, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2055; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2056:

     2057:         # we have a duplicate items index, setup the block maps

     2058:         if not self.items.is_unique:

      /* "pandas/internals.pyx":2058
     *
     *         # we have a duplicate items index, setup the block maps
     *         if not self.items.is_unique:             # <<<<<<<<<<<<<<
     *             self._set_ref_locs(do_refs=True)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2058; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2058; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2058; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_t_9 = ((!__pyx_t_10) != 0);
      if (__pyx_t_9) {

     2059:             self._set_ref_locs(do_refs=True)

        /* "pandas/internals.pyx":2059
     *         # we have a duplicate items index, setup the block maps
     *         if not self.items.is_unique:
     *             self._set_ref_locs(do_refs=True)             # <<<<<<<<<<<<<<
     *
     *     def make_empty(self, axes=None):
     */
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2059; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2059; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_do_refs, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2059; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = PyObject_Call(__pyx_t_7, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2059; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        goto __pyx_L9;
      }
      __pyx_L9:;

     2060:

     2061:     def make_empty(self, axes=None):

    /* "pandas/internals.pyx":2061
     *             self._set_ref_locs(do_refs=True)
     *
     *     def make_empty(self, axes=None):             # <<<<<<<<<<<<<<
     *         """ return an empty BlockManager with the items axis of len 0 """
     *         if axes is None:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_3make_empty(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_2make_empty[] = " return an empty BlockManager with the items axis of len 0 ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_3make_empty = {__Pyx_NAMESTR("make_empty"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_3make_empty, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_2make_empty)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_3make_empty(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("make_empty (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_axes,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "make_empty") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2061; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_axes = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("make_empty", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2061; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.make_empty", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_2make_empty(__pyx_self, __pyx_v_self, __pyx_v_axes);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_2make_empty(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_axes) {
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_v_a = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("make_empty", 0);
      __Pyx_INCREF(__pyx_v_axes);

      /* "pandas/internals.pyx":2061
     *             self._set_ref_locs(do_refs=True)
     *
     *     def make_empty(self, axes=None):             # <<<<<<<<<<<<<<
     *         """ return an empty BlockManager with the items axis of len 0 """
     *         if axes is None:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.BlockManager.make_empty", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_a);
      __Pyx_XDECREF(__pyx_v_axes);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2061
     *             self._set_ref_locs(do_refs=True)
     *
     *     def make_empty(self, axes=None):             # <<<<<<<<<<<<<<
     *         """ return an empty BlockManager with the items axis of len 0 """
     *         if axes is None:
     */
      __pyx_tuple__475 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_axes, __pyx_n_s_blocks, __pyx_n_s_a); if (unlikely(!__pyx_tuple__475)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2061; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__475);
      __Pyx_GIVEREF(__pyx_tuple__475);
      __pyx_codeobj__476 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__475, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_make_empty, 2061, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__476)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2061; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2061
     *             self._set_ref_locs(do_refs=True)
     *
     *     def make_empty(self, axes=None):             # <<<<<<<<<<<<<<
     *         """ return an empty BlockManager with the items axis of len 0 """
     *         if axes is None:
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_3make_empty, 0, __pyx_n_s_BlockManager_make_empty, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__476)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2061; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__477);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_make_empty, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2061; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__477 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__477)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2061; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__477);
      __Pyx_GIVEREF(__pyx_tuple__477);

     2062:         """ return an empty BlockManager with the items axis of len 0 """

     2063:         if axes is None:

      /* "pandas/internals.pyx":2063
     *     def make_empty(self, axes=None):
     *         """ return an empty BlockManager with the items axis of len 0 """
     *         if axes is None:             # <<<<<<<<<<<<<<
     *             axes = [_ensure_index([])] + [
     *                 _ensure_index(a) for a in self.axes[1:]
     */
      __pyx_t_1 = (__pyx_v_axes == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     2064:             axes = [_ensure_index([])] + [

        /* "pandas/internals.pyx":2064
     *         """ return an empty BlockManager with the items axis of len 0 """
     *         if axes is None:
     *             axes = [_ensure_index([])] + [             # <<<<<<<<<<<<<<
     *                 _ensure_index(a) for a in self.axes[1:]
     *             ]
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);

        /* "pandas/internals.pyx":2064
     *         """ return an empty BlockManager with the items axis of len 0 """
     *         if axes is None:
     *             axes = [_ensure_index([])] + [             # <<<<<<<<<<<<<<
     *                 _ensure_index(a) for a in self.axes[1:]
     *             ]
     */
        __pyx_t_3 = PyNumber_Add(__pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_axes, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2065:                 _ensure_index(a) for a in self.axes[1:]

        /* "pandas/internals.pyx":2065
     *         if axes is None:
     *             axes = [_ensure_index([])] + [
     *                 _ensure_index(a) for a in self.axes[1:]             # <<<<<<<<<<<<<<
     *             ]
     *
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_6 = __Pyx_PyObject_GetSlice(__pyx_t_3, 1, 0, NULL, NULL, &__pyx_slice__52, 1, 0, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
          __pyx_t_3 = __pyx_t_6; __Pyx_INCREF(__pyx_t_3); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_8 = Py_TYPE(__pyx_t_3)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_3)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_3)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_6 = __pyx_t_8(__pyx_t_3);
            if (unlikely(!__pyx_t_6)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_6);
          }
          __Pyx_XDECREF_SET(__pyx_v_a, __pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_INCREF(__pyx_v_a);
          PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_a);
          __Pyx_GIVEREF(__pyx_v_a);
          __pyx_t_10 = PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_10))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2064; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

      /* "pandas/internals.pyx":2065
     *         if axes is None:
     *             axes = [_ensure_index([])] + [
     *                 _ensure_index(a) for a in self.axes[1:]             # <<<<<<<<<<<<<<
     *             ]
     *
     */
      __pyx_slice__52 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__52)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2065; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__52);
      __Pyx_GIVEREF(__pyx_slice__52);

     2066:             ]

     2067:

     2068:         # preserve dtype if possible

     2069:         if self.ndim == 1:

      /* "pandas/internals.pyx":2069
     *
     *         # preserve dtype if possible
     *         if self.ndim == 1:             # <<<<<<<<<<<<<<
     *             blocks = np.array([], dtype=self.dtype)
     *         else:
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2069; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_int_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2069; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2069; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_2) {

     2070:             blocks = np.array([], dtype=self.dtype)

        /* "pandas/internals.pyx":2070
     *         # preserve dtype if possible
     *         if self.ndim == 1:
     *             blocks = np.array([], dtype=self.dtype)             # <<<<<<<<<<<<<<
     *         else:
     *             blocks = []
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_array); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_dtype); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_10 = PyObject_Call(__pyx_t_3, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_blocks = __pyx_t_10;
        __pyx_t_10 = 0;
        goto __pyx_L6;
      }
      /*else*/ {

     2071:         else:

     2072:             blocks = []

        /* "pandas/internals.pyx":2072
     *             blocks = np.array([], dtype=self.dtype)
     *         else:
     *             blocks = []             # <<<<<<<<<<<<<<
     *         return self.__class__(blocks, axes)
     *
     */
        __pyx_t_10 = PyList_New(0); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2072; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_v_blocks = __pyx_t_10;
        __pyx_t_10 = 0;
      }
      __pyx_L6:;

     2073:         return self.__class__(blocks, axes)

      /* "pandas/internals.pyx":2073
     *         else:
     *             blocks = []
     *         return self.__class__(blocks, axes)             # <<<<<<<<<<<<<<
     *
     *     def __nonzero__(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_blocks);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_blocks);
      __Pyx_GIVEREF(__pyx_v_blocks);
      __Pyx_INCREF(__pyx_v_axes);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_axes);
      __Pyx_GIVEREF(__pyx_v_axes);
      __pyx_t_5 = PyObject_Call(__pyx_t_10, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     2074:

     2075:     def __nonzero__(self):

    /* "pandas/internals.pyx":2075
     *         return self.__class__(blocks, axes)
     *
     *     def __nonzero__(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_5__nonzero__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_5__nonzero__ = {__Pyx_NAMESTR("__nonzero__"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_5__nonzero__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_5__nonzero__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__nonzero__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_4__nonzero__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_4__nonzero__(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__nonzero__", 0);

      /* "pandas/internals.pyx":2075
     *         return self.__class__(blocks, axes)
     *
     *     def __nonzero__(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2075
     *         return self.__class__(blocks, axes)
     *
     *     def __nonzero__(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */
      __pyx_tuple__478 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__478)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__478);
      __Pyx_GIVEREF(__pyx_tuple__478);

      /* "pandas/internals.pyx":2075
     *         return self.__class__(blocks, axes)
     *
     *     def __nonzero__(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_5__nonzero__, 0, __pyx_n_s_BlockManager___nonzero, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__479)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_nonzero_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__479 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__478, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_nonzero_2, 2075, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__479)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2076:         return True

      /* "pandas/internals.pyx":2076
     *
     *     def __nonzero__(self):
     *         return True             # <<<<<<<<<<<<<<
     *
     *     # Python3 compat
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_True);
      __pyx_r = Py_True;
      goto __pyx_L0;

     2077:

     2078:     # Python3 compat

     2079:     __bool__ = __nonzero__

      /* "pandas/internals.pyx":2079
     *
     *     # Python3 compat
     *     __bool__ = __nonzero__             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_nonzero_2);
      if (unlikely(!__pyx_t_4)) {
        PyErr_Clear();
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_nonzero_2);
      }
      if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_bool_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     2080:

     2081:     @property

      /* "pandas/internals.pyx":2081
     *     __bool__ = __nonzero__
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2081; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2081; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_shape, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     2082:     def shape(self):

    /* "pandas/internals.pyx":2082
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_7shape(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_7shape = {__Pyx_NAMESTR("shape"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_7shape, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_7shape(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_6shape(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_5shape_2generator1(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":2082
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_6shape(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_7_shape *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_7_shape *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_7_shape(__pyx_ptype_6pandas_9internals___pyx_scope_struct_7_shape, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);

      /* "pandas/internals.pyx":2082
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.BlockManager.shape", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2082
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)
     */
      __pyx_tuple__480 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__480)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__480);
      __Pyx_GIVEREF(__pyx_tuple__480);

      /* "pandas/internals.pyx":2082
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_7shape, 0, __pyx_n_s_BlockManager_shape, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__481)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__481 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__480, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shape, 2082, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__481)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":2082
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_7_shape {
      PyObject_HEAD
      PyObject *__pyx_v_self;
    };

     2083:         if getattr(self, '_shape', None) is None:

      /* "pandas/internals.pyx":2083
     *     @property
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:             # <<<<<<<<<<<<<<
     *             self._shape = tuple(len(ax) for ax in self.axes)
     *         return self._shape
     */
      __pyx_t_1 = __pyx_cur_scope->__pyx_v_self;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetAttr3(__pyx_t_1, __pyx_n_s_shape_2, Py_None); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2083; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 == Py_None);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = (__pyx_t_3 != 0);
      if (__pyx_t_4) {

     2084:             self._shape = tuple(len(ax) for ax in self.axes)

    /* "pandas/internals.pyx":2084
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)             # <<<<<<<<<<<<<<
     *         return self._shape
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_5shape_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_8_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_8_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_8_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_8_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_7_shape *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_5shape_2generator1, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.shape.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_5shape_2generator1(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_ax);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_ax, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_5 = PyObject_Length(__pyx_cur_scope->__pyx_v_ax); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        __Pyx_XGIVEREF(__pyx_t_2);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_3;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_4;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L6_resume_from_yield:;
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_2);
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_4 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

        /* "pandas/internals.pyx":2084
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)             # <<<<<<<<<<<<<<
     *         return self._shape
     *
     */
        __pyx_t_2 = __pyx_pf_6pandas_9internals_12BlockManager_5shape_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_shape_2, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

    /* "pandas/internals.pyx":2084
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)             # <<<<<<<<<<<<<<
     *         return self._shape
     *
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_8_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_7_shape *__pyx_outer_scope;
      PyObject *__pyx_v_ax;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     2085:         return self._shape

      /* "pandas/internals.pyx":2085
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple(len(ax) for ax in self.axes)
     *         return self._shape             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_shape_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2085; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2086:

     2087:     @property

      /* "pandas/internals.pyx":2087
     *         return self._shape
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def ndim(self):
     *         if getattr(self, '_ndim', None) is None:
     */
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_builtin_property, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ndim, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     2088:     def ndim(self):

    /* "pandas/internals.pyx":2088
     *
     *     @property
     *     def ndim(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_ndim', None) is None:
     *             self._ndim = len(self.axes)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_9ndim(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_9ndim = {__Pyx_NAMESTR("ndim"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_9ndim, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_9ndim(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ndim (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_8ndim(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_8ndim(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ndim", 0);

      /* "pandas/internals.pyx":2088
     *
     *     @property
     *     def ndim(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_ndim', None) is None:
     *             self._ndim = len(self.axes)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.ndim", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2088
     *
     *     @property
     *     def ndim(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_ndim', None) is None:
     *             self._ndim = len(self.axes)
     */
      __pyx_tuple__482 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__482)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__482);
      __Pyx_GIVEREF(__pyx_tuple__482);

      /* "pandas/internals.pyx":2088
     *
     *     @property
     *     def ndim(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_ndim', None) is None:
     *             self._ndim = len(self.axes)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_9ndim, 0, __pyx_n_s_BlockManager_ndim, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__483)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_codeobj__483 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__482, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_ndim, 2088, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__483)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2088; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2089:         if getattr(self, '_ndim', None) is None:

      /* "pandas/internals.pyx":2089
     *     @property
     *     def ndim(self):
     *         if getattr(self, '_ndim', None) is None:             # <<<<<<<<<<<<<<
     *             self._ndim = len(self.axes)
     *         return self._ndim
     */
      __pyx_t_1 = __Pyx_GetAttr3(__pyx_v_self, __pyx_n_s_ndim_2, Py_None); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2089; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = (__pyx_t_1 == Py_None);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     2090:             self._ndim = len(self.axes)

        /* "pandas/internals.pyx":2090
     *     def ndim(self):
     *         if getattr(self, '_ndim', None) is None:
     *             self._ndim = len(self.axes)             # <<<<<<<<<<<<<<
     *         return self._ndim
     *
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2090; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2090; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2090; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ndim_2, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2090; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2091:         return self._ndim

      /* "pandas/internals.pyx":2091
     *         if getattr(self, '_ndim', None) is None:
     *             self._ndim = len(self.axes)
     *         return self._ndim             # <<<<<<<<<<<<<<
     *
     *     def _set_axis(self, axis, value, check_axis=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2091; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2092:

     2093:     def _set_axis(self, axis, value, check_axis=True):

    /* "pandas/internals.pyx":2093
     *         return self._ndim
     *
     *     def _set_axis(self, axis, value, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis = self.axes[axis]
     *         value = _ensure_index(value)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_11_set_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_11_set_axis = {__Pyx_NAMESTR("_set_axis"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_11_set_axis, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_11_set_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_check_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_axis (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_axis,&__pyx_n_s_value,&__pyx_n_s_check_axis,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_set_axis", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_set_axis", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check_axis);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_set_axis") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_axis = values[1];
        __pyx_v_value = values[2];
        __pyx_v_check_axis = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_set_axis", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._set_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_10_set_axis(__pyx_self, __pyx_v_self, __pyx_v_axis, __pyx_v_value, __pyx_v_check_axis);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_10_set_axis(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_axis, PyObject *__pyx_v_value, PyObject *__pyx_v_check_axis) {
      PyObject *__pyx_v_cur_axis = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_axis", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":2093
     *         return self._ndim
     *
     *     def _set_axis(self, axis, value, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis = self.axes[axis]
     *         value = _ensure_index(value)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager._set_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_cur_axis);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2093
     *         return self._ndim
     *
     *     def _set_axis(self, axis, value, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis = self.axes[axis]
     *         value = _ensure_index(value)
     */
      __pyx_tuple__484 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_axis, __pyx_n_s_value, __pyx_n_s_check_axis, __pyx_n_s_cur_axis); if (unlikely(!__pyx_tuple__484)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__484);
      __Pyx_GIVEREF(__pyx_tuple__484);
      __pyx_codeobj__485 = (PyObject*)__Pyx_PyCode_New(4, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__484, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_axis, 2093, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__485)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2093
     *         return self._ndim
     *
     *     def _set_axis(self, axis, value, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis = self.axes[axis]
     *         value = _ensure_index(value)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_11_set_axis, 0, __pyx_n_s_BlockManager__set_axis, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__485)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__486);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_axis, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__486 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__486)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2093; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__486);
      __Pyx_GIVEREF(__pyx_tuple__486);

     2094:         cur_axis = self.axes[axis]

      /* "pandas/internals.pyx":2094
     *
     *     def _set_axis(self, axis, value, check_axis=True):
     *         cur_axis = self.axes[axis]             # <<<<<<<<<<<<<<
     *         value = _ensure_index(value)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_axis); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2094; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_cur_axis = __pyx_t_2;
      __pyx_t_2 = 0;

     2095:         value = _ensure_index(value)

      /* "pandas/internals.pyx":2095
     *     def _set_axis(self, axis, value, check_axis=True):
     *         cur_axis = self.axes[axis]
     *         value = _ensure_index(value)             # <<<<<<<<<<<<<<
     *
     *         if check_axis and len(value) != len(cur_axis):
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_3);
      __pyx_t_3 = 0;

     2096:

     2097:         if check_axis and len(value) != len(cur_axis):

      /* "pandas/internals.pyx":2097
     *         value = _ensure_index(value)
     *
     *         if check_axis and len(value) != len(cur_axis):             # <<<<<<<<<<<<<<
     *             raise ValueError('Length mismatch: Expected axis has %d elements, '
     *                              'new values have %d elements' % (len(cur_axis),
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_check_axis); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2097; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {
        __pyx_t_5 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2097; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = PyObject_Length(__pyx_v_cur_axis); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2097; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_7 = (__pyx_t_5 != __pyx_t_6);
        __pyx_t_8 = __pyx_t_7;
      } else {
        __pyx_t_8 = __pyx_t_4;
      }
      if (__pyx_t_8) {

     2098:             raise ValueError('Length mismatch: Expected axis has %d elements, '

        /* "pandas/internals.pyx":2098
     *
     *         if check_axis and len(value) != len(cur_axis):
     *             raise ValueError('Length mismatch: Expected axis has %d elements, '             # <<<<<<<<<<<<<<
     *                              'new values have %d elements' % (len(cur_axis),
     *                                                               len(value)))
     */
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2098; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2098; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2098; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     2099:                              'new values have %d elements' % (len(cur_axis),

        /* "pandas/internals.pyx":2099
     *         if check_axis and len(value) != len(cur_axis):
     *             raise ValueError('Length mismatch: Expected axis has %d elements, '
     *                              'new values have %d elements' % (len(cur_axis),             # <<<<<<<<<<<<<<
     *                                                               len(value)))
     *
     */
        __pyx_t_6 = PyObject_Length(__pyx_v_cur_axis); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2099; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2099; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);

        /* "pandas/internals.pyx":2099
     *         if check_axis and len(value) != len(cur_axis):
     *             raise ValueError('Length mismatch: Expected axis has %d elements, '
     *                              'new values have %d elements' % (len(cur_axis),             # <<<<<<<<<<<<<<
     *                                                               len(value)))
     *
     */
        __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2099; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_3 = 0;
        __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Length_mismatch_Expected_axis_ha, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2099; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2100:                                                               len(value)))

        /* "pandas/internals.pyx":2100
     *             raise ValueError('Length mismatch: Expected axis has %d elements, '
     *                              'new values have %d elements' % (len(cur_axis),
     *                                                               len(value)))             # <<<<<<<<<<<<<<
     *
     *         self.axes[axis] = value
     */
        __pyx_t_6 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

     2101:

     2102:         self.axes[axis] = value

      /* "pandas/internals.pyx":2102
     *                                                               len(value)))
     *
     *         self.axes[axis] = value             # <<<<<<<<<<<<<<
     *         self._shape = None
     *         return cur_axis, value
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (unlikely(PyObject_SetItem(__pyx_t_1, __pyx_v_axis, __pyx_v_value) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2103:         self._shape = None

      /* "pandas/internals.pyx":2103
     *
     *         self.axes[axis] = value
     *         self._shape = None             # <<<<<<<<<<<<<<
     *         return cur_axis, value
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_shape_2, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2104:         return cur_axis, value

      /* "pandas/internals.pyx":2104
     *         self.axes[axis] = value
     *         self._shape = None
     *         return cur_axis, value             # <<<<<<<<<<<<<<
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_cur_axis);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_cur_axis);
      __Pyx_GIVEREF(__pyx_v_cur_axis);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2105:

     2106:     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):

    /* "pandas/internals.pyx":2106
     *         return cur_axis, value
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13set_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13set_axis = {__Pyx_NAMESTR("set_axis"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13set_axis, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13set_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_maybe_rename = 0;
      PyObject *__pyx_v_check_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_axis (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_axis,&__pyx_n_s_value,&__pyx_n_s_maybe_rename,&__pyx_n_s_check_axis,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_axis", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_axis", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_maybe_rename);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check_axis);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set_axis") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_axis = values[1];
        __pyx_v_value = values[2];
        __pyx_v_maybe_rename = values[3];
        __pyx_v_check_axis = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set_axis", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.set_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_12set_axis(__pyx_self, __pyx_v_self, __pyx_v_axis, __pyx_v_value, __pyx_v_maybe_rename, __pyx_v_check_axis);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_12set_axis(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_axis, PyObject *__pyx_v_value, PyObject *__pyx_v_maybe_rename, PyObject *__pyx_v_check_axis) {
      PyObject *__pyx_v_cur_axis = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_axis", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":2106
     *         return cur_axis, value
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.BlockManager.set_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_cur_axis);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2106
     *         return cur_axis, value
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *
     */
      __pyx_tuple__487 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_axis, __pyx_n_s_value, __pyx_n_s_maybe_rename, __pyx_n_s_check_axis, __pyx_n_s_cur_axis, __pyx_n_s_block); if (unlikely(!__pyx_tuple__487)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__487);
      __Pyx_GIVEREF(__pyx_tuple__487);
      __pyx_codeobj__488 = (PyObject*)__Pyx_PyCode_New(5, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__487, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_axis_2, 2106, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__488)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2106
     *         return cur_axis, value
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13set_axis, 0, __pyx_n_s_BlockManager_set_axis, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__488)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__489);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_axis_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__489 = PyTuple_Pack(2, ((PyObject *)Py_True), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__489)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__489);
      __Pyx_GIVEREF(__pyx_tuple__489);

     2107:         cur_axis, value = self._set_axis(axis, value, check_axis)

      /* "pandas/internals.pyx":2107
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):
     *         cur_axis, value = self._set_axis(axis, value, check_axis)             # <<<<<<<<<<<<<<
     *
     *         if axis == 0:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_axis);
      __Pyx_GIVEREF(__pyx_v_axis);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __Pyx_INCREF(__pyx_v_check_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_check_axis);
      __Pyx_GIVEREF(__pyx_v_check_axis);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
        PyObject* sequence = __pyx_t_3;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_cur_axis = __pyx_t_2;
      __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_1);
      __pyx_t_1 = 0;

     2108:

     2109:         if axis == 0:

      /* "pandas/internals.pyx":2109
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *
     *         if axis == 0:             # <<<<<<<<<<<<<<
     *
     *             # set/reset ref_locs based on the current index
     */
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {

     2110:

     2111:             # set/reset ref_locs based on the current index

     2112:             # and map the new index if needed

     2113:             self._set_ref_locs(labels=cur_axis)

        /* "pandas/internals.pyx":2113
     *             # set/reset ref_locs based on the current index
     *             # and map the new index if needed
     *             self._set_ref_locs(labels=cur_axis)             # <<<<<<<<<<<<<<
     *
     *             # take via ref_locs
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_labels, __pyx_v_cur_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2114:

     2115:             # take via ref_locs

     2116:             for block in self.blocks:

        /* "pandas/internals.pyx":2116
     *
     *             # take via ref_locs
     *             for block in self.blocks:             # <<<<<<<<<<<<<<
     *                 block.set_ref_items(self.items, maybe_rename=maybe_rename)
     *
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
          __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_2 = __pyx_t_8(__pyx_t_1);
            if (unlikely(!__pyx_t_2)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_2);
          }
          __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_2);
          __pyx_t_2 = 0;

     2117:                 block.set_ref_items(self.items, maybe_rename=maybe_rename)

          /* "pandas/internals.pyx":2117
     *             # take via ref_locs
     *             for block in self.blocks:
     *                 block.set_ref_items(self.items, maybe_rename=maybe_rename)             # <<<<<<<<<<<<<<
     *
     *             # set/reset ref_locs based on the new index
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_set_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_maybe_rename, __pyx_v_maybe_rename) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = PyObject_Call(__pyx_t_2, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2118:

     2119:             # set/reset ref_locs based on the new index

     2120:             self._set_ref_locs(labels=value, do_refs=True)

        /* "pandas/internals.pyx":2120
     *
     *             # set/reset ref_locs based on the new index
     *             self._set_ref_locs(labels=value, do_refs=True)             # <<<<<<<<<<<<<<
     *
     *     def _reset_ref_locs(self):
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2120; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2120; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_labels, __pyx_v_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2120; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_do_refs, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2120; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_9); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2120; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L5;
      }
      __pyx_L5:;

     2121:

     2122:     def _reset_ref_locs(self):

    /* "pandas/internals.pyx":2122
     *             self._set_ref_locs(labels=value, do_refs=True)
     *
     *     def _reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ take the current _ref_locs and reset ref_locs on the blocks
     *             to correctly map, ignoring Nones;
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_15_reset_ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_14_reset_ref_locs[] = " take the current _ref_locs and reset ref_locs on the blocks\n            to correctly map, ignoring Nones;\n            reset both _items_map and _ref_locs ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_15_reset_ref_locs = {__Pyx_NAMESTR("_reset_ref_locs"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_15_reset_ref_locs, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_14_reset_ref_locs)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_15_reset_ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_reset_ref_locs (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_14_reset_ref_locs(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_14_reset_ref_locs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_reset_ref_locs", 0);

      /* "pandas/internals.pyx":2122
     *             self._set_ref_locs(labels=value, do_refs=True)
     *
     *     def _reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ take the current _ref_locs and reset ref_locs on the blocks
     *             to correctly map, ignoring Nones;
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.BlockManager._reset_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2122
     *             self._set_ref_locs(labels=value, do_refs=True)
     *
     *     def _reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ take the current _ref_locs and reset ref_locs on the blocks
     *             to correctly map, ignoring Nones;
     */
      __pyx_tuple__490 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_b); if (unlikely(!__pyx_tuple__490)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__490);
      __Pyx_GIVEREF(__pyx_tuple__490);

      /* "pandas/internals.pyx":2122
     *             self._set_ref_locs(labels=value, do_refs=True)
     *
     *     def _reset_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """ take the current _ref_locs and reset ref_locs on the blocks
     *             to correctly map, ignoring Nones;
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_15_reset_ref_locs, 0, __pyx_n_s_BlockManager__reset_ref_locs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__491)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reset_ref_locs_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__491 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__490, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reset_ref_locs_2, 2122, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__491)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2123:         """ take the current _ref_locs and reset ref_locs on the blocks

     2124:             to correctly map, ignoring Nones;

     2125:             reset both _items_map and _ref_locs """

     2126:

     2127:         # let's reset the ref_locs in individual blocks

     2128:         if self.items.is_unique:

      /* "pandas/internals.pyx":2128
     *
     *         # let's reset the ref_locs in individual blocks
     *         if self.items.is_unique:             # <<<<<<<<<<<<<<
     *             for b in self.blocks:
     *                 b._ref_locs = None
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2128; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2128; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2128; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     2129:             for b in self.blocks:

        /* "pandas/internals.pyx":2129
     *         # let's reset the ref_locs in individual blocks
     *         if self.items.is_unique:
     *             for b in self.blocks:             # <<<<<<<<<<<<<<
     *                 b._ref_locs = None
     *         else:
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
          __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0;
          __pyx_t_5 = NULL;
        } else {
          __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        for (;;) {
          if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_1)) {
            if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_1)) {
            if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_2 = __pyx_t_5(__pyx_t_1);
            if (unlikely(!__pyx_t_2)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_2);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_2);
          __pyx_t_2 = 0;

     2130:                 b._ref_locs = None

          /* "pandas/internals.pyx":2130
     *         if self.items.is_unique:
     *             for b in self.blocks:
     *                 b._ref_locs = None             # <<<<<<<<<<<<<<
     *         else:
     *             for b in self.blocks:
     */
          if (__Pyx_PyObject_SetAttrStr(__pyx_v_b, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2130; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     2131:         else:

     2132:             for b in self.blocks:

        /* "pandas/internals.pyx":2132
     *                 b._ref_locs = None
     *         else:
     *             for b in self.blocks:             # <<<<<<<<<<<<<<
     *                 b.reset_ref_locs()
     *         self._rebuild_ref_locs()
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
          __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
          __pyx_t_5 = NULL;
        } else {
          __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        for (;;) {
          if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_5(__pyx_t_2);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_1);
          __pyx_t_1 = 0;

     2133:                 b.reset_ref_locs()

          /* "pandas/internals.pyx":2133
     *         else:
     *             for b in self.blocks:
     *                 b.reset_ref_locs()             # <<<<<<<<<<<<<<
     *         self._rebuild_ref_locs()
     *
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_reset_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __pyx_L3:;

     2134:         self._rebuild_ref_locs()

      /* "pandas/internals.pyx":2134
     *             for b in self.blocks:
     *                 b.reset_ref_locs()
     *         self._rebuild_ref_locs()             # <<<<<<<<<<<<<<
     *
     *         self._ref_locs = None
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_rebuild_ref_locs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     2135:

     2136:         self._ref_locs = None

      /* "pandas/internals.pyx":2136
     *         self._rebuild_ref_locs()
     *
     *         self._ref_locs = None             # <<<<<<<<<<<<<<
     *         self._items_map = None
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2136; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2137:         self._items_map = None

      /* "pandas/internals.pyx":2137
     *
     *         self._ref_locs = None
     *         self._items_map = None             # <<<<<<<<<<<<<<
     *
     *     def _rebuild_ref_locs(self):
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items_map, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2137; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2138:

     2139:     def _rebuild_ref_locs(self):

    /* "pandas/internals.pyx":2139
     *         self._items_map = None
     *
     *     def _rebuild_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """Take _ref_locs and set the individual block ref_locs, skipping Nones
     *         no effect on a unique index
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_17_rebuild_ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_16_rebuild_ref_locs[] = "Take _ref_locs and set the individual block ref_locs, skipping Nones\n        no effect on a unique index\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_17_rebuild_ref_locs = {__Pyx_NAMESTR("_rebuild_ref_locs"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_17_rebuild_ref_locs, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_16_rebuild_ref_locs)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_17_rebuild_ref_locs(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_rebuild_ref_locs (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_16_rebuild_ref_locs(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_16_rebuild_ref_locs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_item_count = NULL;
      PyObject *__pyx_v_v = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_item_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_rebuild_ref_locs", 0);

      /* "pandas/internals.pyx":2139
     *         self._items_map = None
     *
     *     def _rebuild_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """Take _ref_locs and set the individual block ref_locs, skipping Nones
     *         no effect on a unique index
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.BlockManager._rebuild_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_item_count);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_item_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2139
     *         self._items_map = None
     *
     *     def _rebuild_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """Take _ref_locs and set the individual block ref_locs, skipping Nones
     *         no effect on a unique index
     */
      __pyx_tuple__492 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_item_count, __pyx_n_s_v, __pyx_n_s_block, __pyx_n_s_item_loc); if (unlikely(!__pyx_tuple__492)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__492);
      __Pyx_GIVEREF(__pyx_tuple__492);

      /* "pandas/internals.pyx":2139
     *         self._items_map = None
     *
     *     def _rebuild_ref_locs(self):             # <<<<<<<<<<<<<<
     *         """Take _ref_locs and set the individual block ref_locs, skipping Nones
     *         no effect on a unique index
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_17_rebuild_ref_locs, 0, __pyx_n_s_BlockManager__rebuild_ref_locs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__493)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_rebuild_ref_locs, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__493 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__492, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_rebuild_ref_locs, 2139, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__493)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2140:         """Take _ref_locs and set the individual block ref_locs, skipping Nones

     2141:         no effect on a unique index

     2142:         """

     2143:         if getattr(self, '_ref_locs', None) is not None:

      /* "pandas/internals.pyx":2143
     *         no effect on a unique index
     *         """
     *         if getattr(self, '_ref_locs', None) is not None:             # <<<<<<<<<<<<<<
     *             item_count = 0
     *             for v in self._ref_locs:
     */
      __pyx_t_1 = __Pyx_GetAttr3(__pyx_v_self, __pyx_n_s_ref_locs, Py_None); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = (__pyx_t_1 != Py_None);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     2144:             item_count = 0

        /* "pandas/internals.pyx":2144
     *         """
     *         if getattr(self, '_ref_locs', None) is not None:
     *             item_count = 0             # <<<<<<<<<<<<<<
     *             for v in self._ref_locs:
     *                 if v is not None:
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_v_item_count = __pyx_int_0;

     2145:             for v in self._ref_locs:

        /* "pandas/internals.pyx":2145
     *         if getattr(self, '_ref_locs', None) is not None:
     *             item_count = 0
     *             for v in self._ref_locs:             # <<<<<<<<<<<<<<
     *                 if v is not None:
     *                     block, item_loc = v
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
          __pyx_t_4 = __pyx_t_1; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_6(__pyx_t_4);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_1);
          __pyx_t_1 = 0;

     2146:                 if v is not None:

          /* "pandas/internals.pyx":2146
     *             item_count = 0
     *             for v in self._ref_locs:
     *                 if v is not None:             # <<<<<<<<<<<<<<
     *                     block, item_loc = v
     *                     if block._ref_locs is None:
     */
          __pyx_t_3 = (__pyx_v_v != Py_None);
          __pyx_t_2 = (__pyx_t_3 != 0);
          if (__pyx_t_2) {

     2147:                     block, item_loc = v

            /* "pandas/internals.pyx":2147
     *             for v in self._ref_locs:
     *                 if v is not None:
     *                     block, item_loc = v             # <<<<<<<<<<<<<<
     *                     if block._ref_locs is None:
     *                         block.reset_ref_locs()
     */
            if ((likely(PyTuple_CheckExact(__pyx_v_v))) || (PyList_CheckExact(__pyx_v_v))) {
              PyObject* sequence = __pyx_v_v;
              #if CYTHON_COMPILING_IN_CPYTHON
              Py_ssize_t size = Py_SIZE(sequence);
              #else
              Py_ssize_t size = PySequence_Size(sequence);
              #endif
              if (unlikely(size != 2)) {
                if (size > 2) __Pyx_RaiseTooManyValuesError(2);
                else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              #if CYTHON_COMPILING_IN_CPYTHON
              if (likely(PyTuple_CheckExact(sequence))) {
                __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
                __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1);
              } else {
                __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
                __pyx_t_7 = PyList_GET_ITEM(sequence, 1);
              }
              __Pyx_INCREF(__pyx_t_1);
              __Pyx_INCREF(__pyx_t_7);
              #else
              __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __pyx_t_7 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_7);
              #endif
            } else {
              Py_ssize_t index = -1;
              __pyx_t_8 = PyObject_GetIter(__pyx_v_v); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_8);
              __pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext;
              index = 0; __pyx_t_1 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_1);
              index = 1; __pyx_t_7 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L7_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_7);
              if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_9 = NULL;
              __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
              goto __pyx_L8_unpacking_done;
              __pyx_L7_unpacking_failed:;
              __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
              __pyx_t_9 = NULL;
              if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_L8_unpacking_done:;
            }
            __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_1);
            __pyx_t_1 = 0;
            __Pyx_XDECREF_SET(__pyx_v_item_loc, __pyx_t_7);
            __pyx_t_7 = 0;

     2148:                     if block._ref_locs is None:

            /* "pandas/internals.pyx":2148
     *                 if v is not None:
     *                     block, item_loc = v
     *                     if block._ref_locs is None:             # <<<<<<<<<<<<<<
     *                         block.reset_ref_locs()
     *                     block._ref_locs[item_loc] = item_count
     */
            __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_2 = (__pyx_t_7 == Py_None);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __pyx_t_3 = (__pyx_t_2 != 0);
            if (__pyx_t_3) {

     2149:                         block.reset_ref_locs()

              /* "pandas/internals.pyx":2149
     *                     block, item_loc = v
     *                     if block._ref_locs is None:
     *                         block.reset_ref_locs()             # <<<<<<<<<<<<<<
     *                     block._ref_locs[item_loc] = item_count
     *                     item_count += 1
     */
              __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_reset_ref_locs); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2149; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_7);
              __pyx_t_1 = PyObject_Call(__pyx_t_7, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2149; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
              goto __pyx_L9;
            }
            __pyx_L9:;

     2150:                     block._ref_locs[item_loc] = item_count

            /* "pandas/internals.pyx":2150
     *                     if block._ref_locs is None:
     *                         block.reset_ref_locs()
     *                     block._ref_locs[item_loc] = item_count             # <<<<<<<<<<<<<<
     *                     item_count += 1
     *
     */
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            if (unlikely(PyObject_SetItem(__pyx_t_1, __pyx_v_item_loc, __pyx_v_item_count) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2151:                     item_count += 1

            /* "pandas/internals.pyx":2151
     *                         block.reset_ref_locs()
     *                     block._ref_locs[item_loc] = item_count
     *                     item_count += 1             # <<<<<<<<<<<<<<
     *
     *     def _set_ref_locs(self, labels=None, do_refs=False):
     */
            __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_item_count, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2151; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF_SET(__pyx_v_item_count, __pyx_t_1);
            __pyx_t_1 = 0;
            goto __pyx_L6;
          }
          __pyx_L6:;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2152:

     2153:     def _set_ref_locs(self, labels=None, do_refs=False):

    /* "pandas/internals.pyx":2153
     *                     item_count += 1
     *
     *     def _set_ref_locs(self, labels=None, do_refs=False):             # <<<<<<<<<<<<<<
     *         """
     *         if we have a non-unique index on this axis, set the indexers
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_19_set_ref_locs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_18_set_ref_locs[] = "\n        if we have a non-unique index on this axis, set the indexers\n        we need to set an absolute indexer for the blocks\n        return the indexer if we are not unique\n\n        labels : the (new) labels for this manager\n        ref    : boolean, whether to set the labels (one a 1-1 mapping)\n\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_19_set_ref_locs = {__Pyx_NAMESTR("_set_ref_locs"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_19_set_ref_locs, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_18_set_ref_locs)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_19_set_ref_locs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_labels = 0;
      PyObject *__pyx_v_do_refs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_ref_locs (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_labels,&__pyx_n_s_do_refs,0};
        PyObject* values[3] = {0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        values[2] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_labels);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_do_refs);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_set_ref_locs") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2153; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_labels = values[1];
        __pyx_v_do_refs = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_set_ref_locs", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2153; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._set_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_18_set_ref_locs(__pyx_self, __pyx_v_self, __pyx_v_labels, __pyx_v_do_refs);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_18_set_ref_locs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_labels, PyObject *__pyx_v_do_refs) {
      PyObject *__pyx_v_is_unique = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_im = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_rl = NULL;
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_v_i = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_ref_locs", 0);
      __Pyx_INCREF(__pyx_v_labels);

      /* "pandas/internals.pyx":2153
     *                     item_count += 1
     *
     *     def _set_ref_locs(self, labels=None, do_refs=False):             # <<<<<<<<<<<<<<
     *         """
     *         if we have a non-unique index on this axis, set the indexers
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_XDECREF(__pyx_t_14);
      __Pyx_AddTraceback("pandas.internals.BlockManager._set_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_is_unique);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_im);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_rl);
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_labels);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2153
     *                     item_count += 1
     *
     *     def _set_ref_locs(self, labels=None, do_refs=False):             # <<<<<<<<<<<<<<
     *         """
     *         if we have a non-unique index on this axis, set the indexers
     */
      __pyx_tuple__494 = PyTuple_Pack(13, __pyx_n_s_self, __pyx_n_s_labels, __pyx_n_s_do_refs, __pyx_n_s_is_unique, __pyx_n_s_b, __pyx_n_s_im, __pyx_n_s_block, __pyx_n_s_rl, __pyx_n_s_m, __pyx_n_s_i, __pyx_n_s_item, __pyx_n_s_items, __pyx_n_s_loc); if (unlikely(!__pyx_tuple__494)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__494);
      __Pyx_GIVEREF(__pyx_tuple__494);
      __pyx_codeobj__495 = (PyObject*)__Pyx_PyCode_New(3, 0, 13, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__494, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_ref_locs_2, 2153, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__495)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2153
     *                     item_count += 1
     *
     *     def _set_ref_locs(self, labels=None, do_refs=False):             # <<<<<<<<<<<<<<
     *         """
     *         if we have a non-unique index on this axis, set the indexers
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_19_set_ref_locs, 0, __pyx_n_s_BlockManager__set_ref_locs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__495)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__496);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_ref_locs_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__496 = PyTuple_Pack(2, ((PyObject *)Py_None), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__496)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2153; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__496);
      __Pyx_GIVEREF(__pyx_tuple__496);

     2154:         """

     2155:         if we have a non-unique index on this axis, set the indexers

     2156:         we need to set an absolute indexer for the blocks

     2157:         return the indexer if we are not unique

     2158:

     2159:         labels : the (new) labels for this manager

     2160:         ref    : boolean, whether to set the labels (one a 1-1 mapping)

     2161:

     2162:         """

     2163:

     2164:         if labels is None:

      /* "pandas/internals.pyx":2164
     *         """
     *
     *         if labels is None:             # <<<<<<<<<<<<<<
     *             labels = self.items
     *
     */
      __pyx_t_1 = (__pyx_v_labels == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     2165:             labels = self.items

        /* "pandas/internals.pyx":2165
     *
     *         if labels is None:
     *             labels = self.items             # <<<<<<<<<<<<<<
     *
     *         # we are unique, and coming from a unique
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2165; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF_SET(__pyx_v_labels, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2166:

     2167:         # we are unique, and coming from a unique

     2168:         is_unique = labels.is_unique

      /* "pandas/internals.pyx":2168
     *
     *         # we are unique, and coming from a unique
     *         is_unique = labels.is_unique             # <<<<<<<<<<<<<<
     *         if is_unique and not do_refs:
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_labels, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_v_is_unique = __pyx_t_3;
      __pyx_t_3 = 0;

     2169:         if is_unique and not do_refs:

      /* "pandas/internals.pyx":2169
     *         # we are unique, and coming from a unique
     *         is_unique = labels.is_unique
     *         if is_unique and not do_refs:             # <<<<<<<<<<<<<<
     *
     *             if not self.items.is_unique:
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2169; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_do_refs); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2169; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = (!__pyx_t_1);
        __pyx_t_1 = __pyx_t_4;
      } else {
        __pyx_t_1 = __pyx_t_2;
      }
      if (__pyx_t_1) {

     2170:

     2171:             if not self.items.is_unique:

        /* "pandas/internals.pyx":2171
     *         if is_unique and not do_refs:
     *
     *             if not self.items.is_unique:             # <<<<<<<<<<<<<<
     *
     *                 # reset our ref locs
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2171; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2171; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2171; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_2 = ((!__pyx_t_1) != 0);
        if (__pyx_t_2) {

     2172:

     2173:                 # reset our ref locs

     2174:                 self._ref_locs = None

          /* "pandas/internals.pyx":2174
     *
     *                 # reset our ref locs
     *                 self._ref_locs = None             # <<<<<<<<<<<<<<
     *                 for b in self.blocks:
     *                     b._ref_locs = None
     */
          if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2174; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2175:                 for b in self.blocks:

          /* "pandas/internals.pyx":2175
     *                 # reset our ref locs
     *                 self._ref_locs = None
     *                 for b in self.blocks:             # <<<<<<<<<<<<<<
     *                     b._ref_locs = None
     *
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) {
            __pyx_t_3 = __pyx_t_5; __Pyx_INCREF(__pyx_t_3); __pyx_t_6 = 0;
            __pyx_t_7 = NULL;
          } else {
            __pyx_t_6 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_7 = Py_TYPE(__pyx_t_3)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          for (;;) {
            if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_3)) {
              if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_3)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_5 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_3)) {
              if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_5 = PySequence_ITEM(__pyx_t_3, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_5 = __pyx_t_7(__pyx_t_3);
              if (unlikely(!__pyx_t_5)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2175; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_5);
            }
            __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_5);
            __pyx_t_5 = 0;

     2176:                     b._ref_locs = None

            /* "pandas/internals.pyx":2176
     *                 self._ref_locs = None
     *                 for b in self.blocks:
     *                     b._ref_locs = None             # <<<<<<<<<<<<<<
     *
     *             return None
     */
            if (__Pyx_PyObject_SetAttrStr(__pyx_v_b, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2176; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L5;
        }
        __pyx_L5:;

     2177:

     2178:             return None

        /* "pandas/internals.pyx":2178
     *                     b._ref_locs = None
     *
     *             return None             # <<<<<<<<<<<<<<
     *
     *         # we are going to a non-unique index
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_None);
        __pyx_r = Py_None;
        goto __pyx_L0;
      }

     2179:

     2180:         # we are going to a non-unique index

     2181:         # we have ref_locs on the block at this point

     2182:         if (not is_unique and do_refs) or do_refs == 'force':

      /* "pandas/internals.pyx":2182
     *         # we are going to a non-unique index
     *         # we have ref_locs on the block at this point
     *         if (not is_unique and do_refs) or do_refs == 'force':             # <<<<<<<<<<<<<<
     *
     *             # create the items map
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = (!__pyx_t_2);
      if (__pyx_t_1) {
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_do_refs); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = __pyx_t_2;
      } else {
        __pyx_t_4 = __pyx_t_1;
      }
      if (!__pyx_t_4) {
        __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_do_refs, __pyx_n_s_force, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = __pyx_t_1;
      } else {
        __pyx_t_2 = __pyx_t_4;
      }
      if (__pyx_t_2) {

     2183:

     2184:             # create the items map

     2185:             im = getattr(self, '_items_map', None)

        /* "pandas/internals.pyx":2185
     *
     *             # create the items map
     *             im = getattr(self, '_items_map', None)             # <<<<<<<<<<<<<<
     *             if im is None:
     *
     */
        __pyx_t_3 = __Pyx_GetAttr3(__pyx_v_self, __pyx_n_s_items_map, Py_None); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_v_im = __pyx_t_3;
        __pyx_t_3 = 0;

     2186:             if im is None:

        /* "pandas/internals.pyx":2186
     *             # create the items map
     *             im = getattr(self, '_items_map', None)
     *             if im is None:             # <<<<<<<<<<<<<<
     *
     *                 im = dict()
     */
        __pyx_t_2 = (__pyx_v_im == Py_None);
        __pyx_t_4 = (__pyx_t_2 != 0);
        if (__pyx_t_4) {

     2187:

     2188:                 im = dict()

          /* "pandas/internals.pyx":2188
     *             if im is None:
     *
     *                 im = dict()             # <<<<<<<<<<<<<<
     *                 for block in self.blocks:
     *
     */
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2188; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_im, __pyx_t_3);
          __pyx_t_3 = 0;

     2189:                 for block in self.blocks:

          /* "pandas/internals.pyx":2189
     *
     *                 im = dict()
     *                 for block in self.blocks:             # <<<<<<<<<<<<<<
     *
     *                     # if we have a duplicate index but
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
            __pyx_t_5 = __pyx_t_3; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
            __pyx_t_7 = NULL;
          } else {
            __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          for (;;) {
            if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
              if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_3 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_3 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
              if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_3 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_3 = __pyx_t_7(__pyx_t_5);
              if (unlikely(!__pyx_t_3)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2189; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_3);
            }
            __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_3);
            __pyx_t_3 = 0;

     2190:

     2191:                     # if we have a duplicate index but

     2192:                     # _ref_locs have not been set

     2193:                     try:

            /* "pandas/internals.pyx":2193
     *                     # if we have a duplicate index but
     *                     # _ref_locs have not been set
     *                     try:             # <<<<<<<<<<<<<<
     *                         rl = block.ref_locs
     *                     except:
     */
            {
              /*try:*/ {

     2194:                         rl = block.ref_locs

                /* "pandas/internals.pyx":2194
     *                     # _ref_locs have not been set
     *                     try:
     *                         rl = block.ref_locs             # <<<<<<<<<<<<<<
     *                     except:
     *                         raise AssertionError(
     */
                __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_locs_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2194; __pyx_clineno = __LINE__; goto __pyx_L12_error;}
                __Pyx_GOTREF(__pyx_t_3);
                __Pyx_XDECREF_SET(__pyx_v_rl, __pyx_t_3);
                __pyx_t_3 = 0;
              }
              __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
              __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
              __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
              goto __pyx_L19_try_end;
              __pyx_L12_error:;
              __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;

     2195:                     except:

              /* "pandas/internals.pyx":2195
     *                     try:
     *                         rl = block.ref_locs
     *                     except:             # <<<<<<<<<<<<<<
     *                         raise AssertionError(
     *                             'Cannot create BlockManager._ref_locs because '
     */
              /*except:*/ {
                __Pyx_AddTraceback("pandas.internals.BlockManager._set_ref_locs", __pyx_clineno, __pyx_lineno, __pyx_filename);
                if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_11, &__pyx_t_12) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2195; __pyx_clineno = __LINE__; goto __pyx_L14_except_error;}
                __Pyx_GOTREF(__pyx_t_3);
                __Pyx_GOTREF(__pyx_t_11);
                __Pyx_GOTREF(__pyx_t_12);

     2196:                         raise AssertionError(

                /* "pandas/internals.pyx":2196
     *                         rl = block.ref_locs
     *                     except:
     *                         raise AssertionError(             # <<<<<<<<<<<<<<
     *                             'Cannot create BlockManager._ref_locs because '
     *                             'block [%s] with duplicate items [%s] does not '
     */
                __pyx_t_13 = PyTuple_New(1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2196; __pyx_clineno = __LINE__; goto __pyx_L14_except_error;}
                __Pyx_GOTREF(__pyx_t_13);
                PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_14);
                __Pyx_GIVEREF(__pyx_t_14);
                __pyx_t_14 = 0;
                __pyx_t_14 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_13, NULL); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2196; __pyx_clineno = __LINE__; goto __pyx_L14_except_error;}
                __Pyx_GOTREF(__pyx_t_14);
                __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
                __Pyx_Raise(__pyx_t_14, 0, 0, 0);
                __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2196; __pyx_clineno = __LINE__; goto __pyx_L14_except_error;}
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
                __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
                goto __pyx_L13_exception_handled;
              }
              __pyx_L14_except_error:;
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
              goto __pyx_L1_error;
              __pyx_L13_exception_handled:;
              __Pyx_XGIVEREF(__pyx_t_8);
              __Pyx_XGIVEREF(__pyx_t_9);
              __Pyx_XGIVEREF(__pyx_t_10);
              __Pyx_ExceptionReset(__pyx_t_8, __pyx_t_9, __pyx_t_10);
              __pyx_L19_try_end:;
            }

     2197:                             'Cannot create BlockManager._ref_locs because '

     2198:                             'block [%s] with duplicate items [%s] does not '

     2199:                             'have _ref_locs set' % (block, labels))

                /* "pandas/internals.pyx":2199
     *                             'Cannot create BlockManager._ref_locs because '
     *                             'block [%s] with duplicate items [%s] does not '
     *                             'have _ref_locs set' % (block, labels))             # <<<<<<<<<<<<<<
     *
     *                     m = maybe_create_block_in_items_map(im, block)
     */
                __pyx_t_13 = PyTuple_New(2); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2199; __pyx_clineno = __LINE__; goto __pyx_L14_except_error;}
                __Pyx_GOTREF(__pyx_t_13);
                __Pyx_INCREF(__pyx_v_block);
                PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_v_block);
                __Pyx_GIVEREF(__pyx_v_block);
                __Pyx_INCREF(__pyx_v_labels);
                PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_v_labels);
                __Pyx_GIVEREF(__pyx_v_labels);
                __pyx_t_14 = __Pyx_PyString_Format(__pyx_kp_s_Cannot_create_BlockManager__ref, __pyx_t_13); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2199; __pyx_clineno = __LINE__; goto __pyx_L14_except_error;}
                __Pyx_GOTREF(__pyx_t_14);
                __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;

     2200:

     2201:                     m = maybe_create_block_in_items_map(im, block)

            /* "pandas/internals.pyx":2201
     *                             'have _ref_locs set' % (block, labels))
     *
     *                     m = maybe_create_block_in_items_map(im, block)             # <<<<<<<<<<<<<<
     *                     for i, item in enumerate(block.items):
     *                         m[i] = rl[i]
     */
            __pyx_t_12 = __Pyx_GetModuleGlobalName(__pyx_n_s_maybe_create_block_in_items_map); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_INCREF(__pyx_v_im);
            PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_im);
            __Pyx_GIVEREF(__pyx_v_im);
            __Pyx_INCREF(__pyx_v_block);
            PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_block);
            __Pyx_GIVEREF(__pyx_v_block);
            __pyx_t_3 = PyObject_Call(__pyx_t_12, __pyx_t_11, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_XDECREF_SET(__pyx_v_m, __pyx_t_3);
            __pyx_t_3 = 0;

     2202:                     for i, item in enumerate(block.items):

            /* "pandas/internals.pyx":2202
     *
     *                     m = maybe_create_block_in_items_map(im, block)
     *                     for i, item in enumerate(block.items):             # <<<<<<<<<<<<<<
     *                         m[i] = rl[i]
     *
     */
            __Pyx_INCREF(__pyx_int_0);
            __pyx_t_3 = __pyx_int_0;
            __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            if (PyList_CheckExact(__pyx_t_11) || PyTuple_CheckExact(__pyx_t_11)) {
              __pyx_t_12 = __pyx_t_11; __Pyx_INCREF(__pyx_t_12); __pyx_t_15 = 0;
              __pyx_t_16 = NULL;
            } else {
              __pyx_t_15 = -1; __pyx_t_12 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_12);
              __pyx_t_16 = Py_TYPE(__pyx_t_12)->tp_iternext;
            }
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            for (;;) {
              if (!__pyx_t_16 && PyList_CheckExact(__pyx_t_12)) {
                if (__pyx_t_15 >= PyList_GET_SIZE(__pyx_t_12)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_11 = PyList_GET_ITEM(__pyx_t_12, __pyx_t_15); __Pyx_INCREF(__pyx_t_11); __pyx_t_15++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_11 = PySequence_ITEM(__pyx_t_12, __pyx_t_15); __pyx_t_15++; if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else if (!__pyx_t_16 && PyTuple_CheckExact(__pyx_t_12)) {
                if (__pyx_t_15 >= PyTuple_GET_SIZE(__pyx_t_12)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_11 = PyTuple_GET_ITEM(__pyx_t_12, __pyx_t_15); __Pyx_INCREF(__pyx_t_11); __pyx_t_15++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_11 = PySequence_ITEM(__pyx_t_12, __pyx_t_15); __pyx_t_15++; if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else {
                __pyx_t_11 = __pyx_t_16(__pyx_t_12);
                if (unlikely(!__pyx_t_11)) {
                  PyObject* exc_type = PyErr_Occurred();
                  if (exc_type) {
                    if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                    else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                  }
                  break;
                }
                __Pyx_GOTREF(__pyx_t_11);
              }
              __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_11);
              __pyx_t_11 = 0;
              __Pyx_INCREF(__pyx_t_3);
              __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
              __pyx_t_11 = PyNumber_Add(__pyx_t_3, __pyx_int_1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_3);
              __pyx_t_3 = __pyx_t_11;
              __pyx_t_11 = 0;

     2203:                         m[i] = rl[i]

              /* "pandas/internals.pyx":2203
     *                     m = maybe_create_block_in_items_map(im, block)
     *                     for i, item in enumerate(block.items):
     *                         m[i] = rl[i]             # <<<<<<<<<<<<<<
     *
     *                 self._items_map = im
     */
              __pyx_t_11 = PyObject_GetItem(__pyx_v_rl, __pyx_v_i); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2203; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_11);
              if (unlikely(PyObject_SetItem(__pyx_v_m, __pyx_v_i, __pyx_t_11) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            }
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          }
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2204:

     2205:                 self._items_map = im

          /* "pandas/internals.pyx":2205
     *                         m[i] = rl[i]
     *
     *                 self._items_map = im             # <<<<<<<<<<<<<<
     *
     *             # create the _ref_loc map here
     */
          if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items_map, __pyx_v_im) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          goto __pyx_L9;
        }
        __pyx_L9:;

     2206:

     2207:             # create the _ref_loc map here

     2208:             rl = [None] * len(labels)

        /* "pandas/internals.pyx":2208
     *
     *             # create the _ref_loc map here
     *             rl = [None] * len(labels)             # <<<<<<<<<<<<<<
     *             for block, items in im.items():
     *                 for i, loc in enumerate(items):
     */
        __pyx_t_6 = PyObject_Length(__pyx_v_labels); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = PyList_New(1 * ((__pyx_t_6<0) ? 0:__pyx_t_6)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        { Py_ssize_t __pyx_temp;
          for (__pyx_temp=0; __pyx_temp < __pyx_t_6; __pyx_temp++) {
            __Pyx_INCREF(Py_None);
            PyList_SET_ITEM(__pyx_t_5, __pyx_temp, Py_None);
            __Pyx_GIVEREF(Py_None);
          }
        }
        __Pyx_XDECREF_SET(__pyx_v_rl, __pyx_t_5);
        __pyx_t_5 = 0;

     2209:             for block, items in im.items():

        /* "pandas/internals.pyx":2209
     *             # create the _ref_loc map here
     *             rl = [None] * len(labels)
     *             for block, items in im.items():             # <<<<<<<<<<<<<<
     *                 for i, loc in enumerate(items):
     *                     rl[loc] = (block, i)
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_im, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
          __pyx_t_5 = __pyx_t_3; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_3); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_3 = __pyx_t_7(__pyx_t_5);
            if (unlikely(!__pyx_t_3)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_3);
          }
          if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
            PyObject* sequence = __pyx_t_3;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_12 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_12 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_11 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_12);
            __Pyx_INCREF(__pyx_t_11);
            #else
            __pyx_t_12 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            #endif
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_14 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_14)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_14);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_17 = Py_TYPE(__pyx_t_14)->tp_iternext;
            index = 0; __pyx_t_12 = __pyx_t_17(__pyx_t_14); if (unlikely(!__pyx_t_12)) goto __pyx_L26_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_12);
            index = 1; __pyx_t_11 = __pyx_t_17(__pyx_t_14); if (unlikely(!__pyx_t_11)) goto __pyx_L26_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_11);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_17(__pyx_t_14), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_17 = NULL;
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            goto __pyx_L27_unpacking_done;
            __pyx_L26_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_14); __pyx_t_14 = 0;
            __pyx_t_17 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L27_unpacking_done:;
          }
          __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_12);
          __pyx_t_12 = 0;
          __Pyx_XDECREF_SET(__pyx_v_items, __pyx_t_11);
          __pyx_t_11 = 0;

     2210:                 for i, loc in enumerate(items):

          /* "pandas/internals.pyx":2210
     *             rl = [None] * len(labels)
     *             for block, items in im.items():
     *                 for i, loc in enumerate(items):             # <<<<<<<<<<<<<<
     *                     rl[loc] = (block, i)
     *             self._ref_locs = rl
     */
          __Pyx_INCREF(__pyx_int_0);
          __pyx_t_3 = __pyx_int_0;
          if (PyList_CheckExact(__pyx_v_items) || PyTuple_CheckExact(__pyx_v_items)) {
            __pyx_t_11 = __pyx_v_items; __Pyx_INCREF(__pyx_t_11); __pyx_t_15 = 0;
            __pyx_t_16 = NULL;
          } else {
            __pyx_t_15 = -1; __pyx_t_11 = PyObject_GetIter(__pyx_v_items); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_16 = Py_TYPE(__pyx_t_11)->tp_iternext;
          }
          for (;;) {
            if (!__pyx_t_16 && PyList_CheckExact(__pyx_t_11)) {
              if (__pyx_t_15 >= PyList_GET_SIZE(__pyx_t_11)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_12 = PyList_GET_ITEM(__pyx_t_11, __pyx_t_15); __Pyx_INCREF(__pyx_t_12); __pyx_t_15++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_12 = PySequence_ITEM(__pyx_t_11, __pyx_t_15); __pyx_t_15++; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_16 && PyTuple_CheckExact(__pyx_t_11)) {
              if (__pyx_t_15 >= PyTuple_GET_SIZE(__pyx_t_11)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_11, __pyx_t_15); __Pyx_INCREF(__pyx_t_12); __pyx_t_15++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_12 = PySequence_ITEM(__pyx_t_11, __pyx_t_15); __pyx_t_15++; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_12 = __pyx_t_16(__pyx_t_11);
              if (unlikely(!__pyx_t_12)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_12);
            }
            __Pyx_XDECREF_SET(__pyx_v_loc, __pyx_t_12);
            __pyx_t_12 = 0;
            __Pyx_INCREF(__pyx_t_3);
            __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
            __pyx_t_12 = PyNumber_Add(__pyx_t_3, __pyx_int_1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_3);
            __pyx_t_3 = __pyx_t_12;
            __pyx_t_12 = 0;

     2211:                     rl[loc] = (block, i)

            /* "pandas/internals.pyx":2211
     *             for block, items in im.items():
     *                 for i, loc in enumerate(items):
     *                     rl[loc] = (block, i)             # <<<<<<<<<<<<<<
     *             self._ref_locs = rl
     *             return rl
     */
            __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_INCREF(__pyx_v_block);
            PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_v_block);
            __Pyx_GIVEREF(__pyx_v_block);
            __Pyx_INCREF(__pyx_v_i);
            PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            if (unlikely(PyObject_SetItem(__pyx_v_rl, __pyx_v_loc, __pyx_t_12) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2212:             self._ref_locs = rl

        /* "pandas/internals.pyx":2212
     *                 for i, loc in enumerate(items):
     *                     rl[loc] = (block, i)
     *             self._ref_locs = rl             # <<<<<<<<<<<<<<
     *             return rl
     *
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, __pyx_v_rl) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2212; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2213:             return rl

        /* "pandas/internals.pyx":2213
     *                     rl[loc] = (block, i)
     *             self._ref_locs = rl
     *             return rl             # <<<<<<<<<<<<<<
     *
     *         elif do_refs:
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_rl);
        __pyx_r = __pyx_v_rl;
        goto __pyx_L0;
      }

     2214:

     2215:         elif do_refs:

      /* "pandas/internals.pyx":2215
     *             return rl
     *
     *         elif do_refs:             # <<<<<<<<<<<<<<
     *             self._reset_ref_locs()
     *
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_do_refs); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2215; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {

     2216:             self._reset_ref_locs()

        /* "pandas/internals.pyx":2216
     *
     *         elif do_refs:
     *             self._reset_ref_locs()             # <<<<<<<<<<<<<<
     *
     *         # return our cached _ref_locs (or will compute again
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reset_ref_locs_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2216; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2216; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L8;
      }
      __pyx_L8:;

     2217:

     2218:         # return our cached _ref_locs (or will compute again

     2219:         # when we recreate the block manager if needed

     2220:         return getattr(self, '_ref_locs', None)

      /* "pandas/internals.pyx":2220
     *         # return our cached _ref_locs (or will compute again
     *         # when we recreate the block manager if needed
     *         return getattr(self, '_ref_locs', None)             # <<<<<<<<<<<<<<
     *
     *     def get_items_map(self, use_cached=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_GetAttr3(__pyx_v_self, __pyx_n_s_ref_locs, Py_None); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     2221:

     2222:     def get_items_map(self, use_cached=True):

    /* "pandas/internals.pyx":2222
     *         return getattr(self, '_ref_locs', None)
     *
     *     def get_items_map(self, use_cached=True):             # <<<<<<<<<<<<<<
     *         """
     *         return an inverted ref_loc map for an item index
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_21get_items_map(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_20get_items_map[] = "\n        return an inverted ref_loc map for an item index\n        block -> item (in that block) location -> column location\n\n        use_cached : boolean, use the cached items map, or recreate\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_21get_items_map = {__Pyx_NAMESTR("get_items_map"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_21get_items_map, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_20get_items_map)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_21get_items_map(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_use_cached = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_items_map (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_use_cached,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_use_cached);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_items_map") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2222; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_use_cached = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_items_map", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2222; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_items_map", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_20get_items_map(__pyx_self, __pyx_v_self, __pyx_v_use_cached);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_20get_items_map(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_use_cached) {
      PyObject *__pyx_v_im = NULL;
      PyObject *__pyx_v_rl = NULL;
      PyObject *__pyx_v_axis = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_idx = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_items_map", 0);

      /* "pandas/internals.pyx":2222
     *         return getattr(self, '_ref_locs', None)
     *
     *     def get_items_map(self, use_cached=True):             # <<<<<<<<<<<<<<
     *         """
     *         return an inverted ref_loc map for an item index
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_items_map", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_im);
      __Pyx_XDECREF(__pyx_v_rl);
      __Pyx_XDECREF(__pyx_v_axis);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_idx);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2222
     *         return getattr(self, '_ref_locs', None)
     *
     *     def get_items_map(self, use_cached=True):             # <<<<<<<<<<<<<<
     *         """
     *         return an inverted ref_loc map for an item index
     */
      __pyx_tuple__497 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_use_cached, __pyx_n_s_im, __pyx_n_s_rl, __pyx_n_s_axis, __pyx_n_s_block, __pyx_n_s_m, __pyx_n_s_i, __pyx_n_s_item, __pyx_n_s_idx); if (unlikely(!__pyx_tuple__497)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__497);
      __Pyx_GIVEREF(__pyx_tuple__497);
      __pyx_codeobj__498 = (PyObject*)__Pyx_PyCode_New(2, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__497, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_items_map, 2222, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__498)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2222
     *         return getattr(self, '_ref_locs', None)
     *
     *     def get_items_map(self, use_cached=True):             # <<<<<<<<<<<<<<
     *         """
     *         return an inverted ref_loc map for an item index
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_21get_items_map, 0, __pyx_n_s_BlockManager_get_items_map, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__498)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_4, __pyx_tuple__499);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_items_map, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_tuple__499 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__499)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__499);
      __Pyx_GIVEREF(__pyx_tuple__499);

     2223:         """

     2224:         return an inverted ref_loc map for an item index

     2225:         block -> item (in that block) location -> column location

     2226:

     2227:         use_cached : boolean, use the cached items map, or recreate

     2228:         """

     2229:

     2230:         # cache check

     2231:         if use_cached:

      /* "pandas/internals.pyx":2231
     *
     *         # cache check
     *         if use_cached:             # <<<<<<<<<<<<<<
     *             im = getattr(self, '_items_map', None)
     *             if im is not None:
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_use_cached); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2231; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     2232:             im = getattr(self, '_items_map', None)

        /* "pandas/internals.pyx":2232
     *         # cache check
     *         if use_cached:
     *             im = getattr(self, '_items_map', None)             # <<<<<<<<<<<<<<
     *             if im is not None:
     *                 return im
     */
        __pyx_t_2 = __Pyx_GetAttr3(__pyx_v_self, __pyx_n_s_items_map, Py_None); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2232; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_v_im = __pyx_t_2;
        __pyx_t_2 = 0;

     2233:             if im is not None:

        /* "pandas/internals.pyx":2233
     *         if use_cached:
     *             im = getattr(self, '_items_map', None)
     *             if im is not None:             # <<<<<<<<<<<<<<
     *                 return im
     *
     */
        __pyx_t_1 = (__pyx_v_im != Py_None);
        __pyx_t_3 = (__pyx_t_1 != 0);
        if (__pyx_t_3) {

     2234:                 return im

          /* "pandas/internals.pyx":2234
     *             im = getattr(self, '_items_map', None)
     *             if im is not None:
     *                 return im             # <<<<<<<<<<<<<<
     *
     *         im = dict()
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_im);
          __pyx_r = __pyx_v_im;
          goto __pyx_L0;
        }
        goto __pyx_L3;
      }
      __pyx_L3:;

     2235:

     2236:         im = dict()

      /* "pandas/internals.pyx":2236
     *                 return im
     *
     *         im = dict()             # <<<<<<<<<<<<<<
     *         rl = self._set_ref_locs()
     *
     */
      __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2236; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_XDECREF_SET(__pyx_v_im, __pyx_t_2);
      __pyx_t_2 = 0;

     2237:         rl = self._set_ref_locs()

      /* "pandas/internals.pyx":2237
     *
     *         im = dict()
     *         rl = self._set_ref_locs()             # <<<<<<<<<<<<<<
     *
     *         # we have a non-duplicative index
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_rl = __pyx_t_4;
      __pyx_t_4 = 0;

     2238:

     2239:         # we have a non-duplicative index

     2240:         if rl is None:

      /* "pandas/internals.pyx":2240
     *
     *         # we have a non-duplicative index
     *         if rl is None:             # <<<<<<<<<<<<<<
     *
     *             axis = self.axes[0]
     */
      __pyx_t_3 = (__pyx_v_rl == Py_None);
      __pyx_t_1 = (__pyx_t_3 != 0);
      if (__pyx_t_1) {

     2241:

     2242:             axis = self.axes[0]

        /* "pandas/internals.pyx":2242
     *         if rl is None:
     *
     *             axis = self.axes[0]             # <<<<<<<<<<<<<<
     *             for block in self.blocks:
     *
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2242; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_axis = __pyx_t_2;
        __pyx_t_2 = 0;

     2243:             for block in self.blocks:

        /* "pandas/internals.pyx":2243
     *
     *             axis = self.axes[0]
     *             for block in self.blocks:             # <<<<<<<<<<<<<<
     *
     *                 m = maybe_create_block_in_items_map(im, block)
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
          __pyx_t_4 = __pyx_t_2; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_2 = __pyx_t_6(__pyx_t_4);
            if (unlikely(!__pyx_t_2)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2243; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_2);
          }
          __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_2);
          __pyx_t_2 = 0;

     2244:

     2245:                 m = maybe_create_block_in_items_map(im, block)

          /* "pandas/internals.pyx":2245
     *             for block in self.blocks:
     *
     *                 m = maybe_create_block_in_items_map(im, block)             # <<<<<<<<<<<<<<
     *                 for i, item in enumerate(block.items):
     *                     m[i] = axis.get_loc(item)
     */
          __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_maybe_create_block_in_items_map); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_INCREF(__pyx_v_im);
          PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_im);
          __Pyx_GIVEREF(__pyx_v_im);
          __Pyx_INCREF(__pyx_v_block);
          PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_block);
          __Pyx_GIVEREF(__pyx_v_block);
          __pyx_t_8 = PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2245; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_XDECREF_SET(__pyx_v_m, __pyx_t_8);
          __pyx_t_8 = 0;

     2246:                 for i, item in enumerate(block.items):

          /* "pandas/internals.pyx":2246
     *
     *                 m = maybe_create_block_in_items_map(im, block)
     *                 for i, item in enumerate(block.items):             # <<<<<<<<<<<<<<
     *                     m[i] = axis.get_loc(item)
     *
     */
          __Pyx_INCREF(__pyx_int_0);
          __pyx_t_8 = __pyx_int_0;
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) {
            __pyx_t_2 = __pyx_t_7; __Pyx_INCREF(__pyx_t_2); __pyx_t_9 = 0;
            __pyx_t_10 = NULL;
          } else {
            __pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_10 = Py_TYPE(__pyx_t_2)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          for (;;) {
            if (!__pyx_t_10 && PyList_CheckExact(__pyx_t_2)) {
              if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_2)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_7 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_7); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_7 = PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_10 && PyTuple_CheckExact(__pyx_t_2)) {
              if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_7); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_7 = PySequence_ITEM(__pyx_t_2, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_7 = __pyx_t_10(__pyx_t_2);
              if (unlikely(!__pyx_t_7)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_7);
            }
            __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_7);
            __pyx_t_7 = 0;
            __Pyx_INCREF(__pyx_t_8);
            __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_8);
            __pyx_t_7 = PyNumber_Add(__pyx_t_8, __pyx_int_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_DECREF(__pyx_t_8);
            __pyx_t_8 = __pyx_t_7;
            __pyx_t_7 = 0;

     2247:                     m[i] = axis.get_loc(item)

            /* "pandas/internals.pyx":2247
     *                 m = maybe_create_block_in_items_map(im, block)
     *                 for i, item in enumerate(block.items):
     *                     m[i] = axis.get_loc(item)             # <<<<<<<<<<<<<<
     *
     *         # use the ref_locs to construct the map
     */
            __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_axis, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_INCREF(__pyx_v_item);
            PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_item);
            __Pyx_GIVEREF(__pyx_v_item);
            __pyx_t_12 = PyObject_Call(__pyx_t_7, __pyx_t_11, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            if (unlikely(PyObject_SetItem(__pyx_v_m, __pyx_v_i, __pyx_t_12) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          }
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L5;
      }
      /*else*/ {

     2248:

     2249:         # use the ref_locs to construct the map

     2250:         else:

     2251:

     2252:             for i, (block, idx) in enumerate(rl):

        /* "pandas/internals.pyx":2252
     *         else:
     *
     *             for i, (block, idx) in enumerate(rl):             # <<<<<<<<<<<<<<
     *
     *                 m = maybe_create_block_in_items_map(im, block)
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_4 = __pyx_int_0;
        if (PyList_CheckExact(__pyx_v_rl) || PyTuple_CheckExact(__pyx_v_rl)) {
          __pyx_t_8 = __pyx_v_rl; __Pyx_INCREF(__pyx_t_8); __pyx_t_5 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_v_rl); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_6 = Py_TYPE(__pyx_t_8)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_8)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_8, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_8)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_8, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_2 = __pyx_t_6(__pyx_t_8);
            if (unlikely(!__pyx_t_2)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_2);
          }
          if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
            PyObject* sequence = __pyx_t_2;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_12 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_12 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_11 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_12);
            __Pyx_INCREF(__pyx_t_11);
            #else
            __pyx_t_12 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            #endif
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_7 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_t_13 = Py_TYPE(__pyx_t_7)->tp_iternext;
            index = 0; __pyx_t_12 = __pyx_t_13(__pyx_t_7); if (unlikely(!__pyx_t_12)) goto __pyx_L12_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_12);
            index = 1; __pyx_t_11 = __pyx_t_13(__pyx_t_7); if (unlikely(!__pyx_t_11)) goto __pyx_L12_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_11);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_13(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_13 = NULL;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            goto __pyx_L13_unpacking_done;
            __pyx_L12_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __pyx_t_13 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L13_unpacking_done:;
          }
          __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_12);
          __pyx_t_12 = 0;
          __Pyx_XDECREF_SET(__pyx_v_idx, __pyx_t_11);
          __pyx_t_11 = 0;
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_4);
          __pyx_t_2 = PyNumber_Add(__pyx_t_4, __pyx_int_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_4);
          __pyx_t_4 = __pyx_t_2;
          __pyx_t_2 = 0;

     2253:

     2254:                 m = maybe_create_block_in_items_map(im, block)

          /* "pandas/internals.pyx":2254
     *             for i, (block, idx) in enumerate(rl):
     *
     *                 m = maybe_create_block_in_items_map(im, block)             # <<<<<<<<<<<<<<
     *                 m[idx] = i
     *
     */
          __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_maybe_create_block_in_items_map); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2254; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2254; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_im);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_im);
          __Pyx_GIVEREF(__pyx_v_im);
          __Pyx_INCREF(__pyx_v_block);
          PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_block);
          __Pyx_GIVEREF(__pyx_v_block);
          __pyx_t_12 = PyObject_Call(__pyx_t_2, __pyx_t_11, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2254; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF_SET(__pyx_v_m, __pyx_t_12);
          __pyx_t_12 = 0;

     2255:                 m[idx] = i

          /* "pandas/internals.pyx":2255
     *
     *                 m = maybe_create_block_in_items_map(im, block)
     *                 m[idx] = i             # <<<<<<<<<<<<<<
     *
     *         self._items_map = im
     */
          if (unlikely(PyObject_SetItem(__pyx_v_m, __pyx_v_idx, __pyx_v_i) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __pyx_L5:;

     2256:

     2257:         self._items_map = im

      /* "pandas/internals.pyx":2257
     *                 m[idx] = i
     *
     *         self._items_map = im             # <<<<<<<<<<<<<<
     *         return im
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items_map, __pyx_v_im) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2258:         return im

      /* "pandas/internals.pyx":2258
     *
     *         self._items_map = im
     *         return im             # <<<<<<<<<<<<<<
     *
     *     # make items read only for now
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_im);
      __pyx_r = __pyx_v_im;
      goto __pyx_L0;

     2259:

     2260:     # make items read only for now

     2261:     def _get_items(self):

    /* "pandas/internals.pyx":2261
     *
     *     # make items read only for now
     *     def _get_items(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *     items = property(fget=_get_items)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_23_get_items(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_23_get_items = {__Pyx_NAMESTR("_get_items"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_23_get_items, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_23_get_items(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_items (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_22_get_items(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_22_get_items(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_items", 0);

      /* "pandas/internals.pyx":2261
     *
     *     # make items read only for now
     *     def _get_items(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *     items = property(fget=_get_items)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.BlockManager._get_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2261
     *
     *     # make items read only for now
     *     def _get_items(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *     items = property(fget=_get_items)
     */
      __pyx_tuple__500 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__500)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__500);
      __Pyx_GIVEREF(__pyx_tuple__500);

      /* "pandas/internals.pyx":2261
     *
     *     # make items read only for now
     *     def _get_items(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *     items = property(fget=_get_items)
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_23_get_items, 0, __pyx_n_s_BlockManager__get_items, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__501)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_items, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_codeobj__501 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__500, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_items, 2261, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__501)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2262:         return self.axes[0]

      /* "pandas/internals.pyx":2262
     *     # make items read only for now
     *     def _get_items(self):
     *         return self.axes[0]             # <<<<<<<<<<<<<<
     *     items = property(fget=_get_items)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2262; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2262; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2263:     items = property(fget=_get_items)

      /* "pandas/internals.pyx":2263
     *     def _get_items(self):
     *         return self.axes[0]
     *     items = property(fget=_get_items)             # <<<<<<<<<<<<<<
     *
     *     def _get_counts(self, f):
     */
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2263; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_GetItem(__pyx_t_3, __pyx_n_s_get_items);
      if (unlikely(!__pyx_t_5)) {
        PyErr_Clear();
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_get_items);
      }
      if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2263; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fget, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2263; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_empty_tuple, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2263; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_items, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2263; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2264:

     2265:     def _get_counts(self, f):

    /* "pandas/internals.pyx":2265
     *     items = property(fget=_get_items)
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         """ return a dict of the counts of the function in BlockManager """
     *         self._consolidate_inplace()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_25_get_counts(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_24_get_counts[] = " return a dict of the counts of the function in BlockManager ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_25_get_counts = {__Pyx_NAMESTR("_get_counts"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_25_get_counts, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_24_get_counts)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_25_get_counts(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_f = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_counts (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_f,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_get_counts", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2265; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_get_counts") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2265; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_f = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_get_counts", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2265; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._get_counts", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_24_get_counts(__pyx_self, __pyx_v_self, __pyx_v_f);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_24_get_counts(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_f) {
      PyObject *__pyx_v_counts = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_v = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_counts", 0);

      /* "pandas/internals.pyx":2265
     *     items = property(fget=_get_items)
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         """ return a dict of the counts of the function in BlockManager """
     *         self._consolidate_inplace()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.BlockManager._get_counts", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_counts);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2265
     *     items = property(fget=_get_items)
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         """ return a dict of the counts of the function in BlockManager """
     *         self._consolidate_inplace()
     */
      __pyx_tuple__502 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_f, __pyx_n_s_counts, __pyx_n_s_b, __pyx_n_s_v); if (unlikely(!__pyx_tuple__502)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__502);
      __Pyx_GIVEREF(__pyx_tuple__502);

      /* "pandas/internals.pyx":2265
     *     items = property(fget=_get_items)
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         """ return a dict of the counts of the function in BlockManager """
     *         self._consolidate_inplace()
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_25_get_counts, 0, __pyx_n_s_BlockManager__get_counts, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__503)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_counts, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__503 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__502, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_counts, 2265, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__503)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2266:         """ return a dict of the counts of the function in BlockManager """

     2267:         self._consolidate_inplace()

      /* "pandas/internals.pyx":2267
     *     def _get_counts(self, f):
     *         """ return a dict of the counts of the function in BlockManager """
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         counts = dict()
     *         for b in self.blocks:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2267; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2267; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2268:         counts = dict()

      /* "pandas/internals.pyx":2268
     *         """ return a dict of the counts of the function in BlockManager """
     *         self._consolidate_inplace()
     *         counts = dict()             # <<<<<<<<<<<<<<
     *         for b in self.blocks:
     *             v = f(b)
     */
      __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_counts = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     2269:         for b in self.blocks:

      /* "pandas/internals.pyx":2269
     *         self._consolidate_inplace()
     *         counts = dict()
     *         for b in self.blocks:             # <<<<<<<<<<<<<<
     *             v = f(b)
     *             counts[v] = counts.get(v, 0) + b.shape[0]
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_4(__pyx_t_1);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_2);
        __pyx_t_2 = 0;

     2270:             v = f(b)

        /* "pandas/internals.pyx":2270
     *         counts = dict()
     *         for b in self.blocks:
     *             v = f(b)             # <<<<<<<<<<<<<<
     *             counts[v] = counts.get(v, 0) + b.shape[0]
     *         return counts
     */
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_b);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_b);
        __Pyx_GIVEREF(__pyx_v_b);
        __pyx_t_5 = PyObject_Call(__pyx_v_f, __pyx_t_2, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_5);
        __pyx_t_5 = 0;

     2271:             counts[v] = counts.get(v, 0) + b.shape[0]

        /* "pandas/internals.pyx":2271
     *         for b in self.blocks:
     *             v = f(b)
     *             counts[v] = counts.get(v, 0) + b.shape[0]             # <<<<<<<<<<<<<<
     *         return counts
     *
     */
        __pyx_t_5 = __Pyx_PyDict_GetItemDefault(__pyx_v_counts, __pyx_v_v, __pyx_int_0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_6 = __Pyx_GetItemInt(__pyx_t_2, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2271; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyNumber_Add(__pyx_t_5, __pyx_t_6); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (unlikely(PyDict_SetItem(__pyx_v_counts, __pyx_v_v, __pyx_t_2) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2272:         return counts

      /* "pandas/internals.pyx":2272
     *             v = f(b)
     *             counts[v] = counts.get(v, 0) + b.shape[0]
     *         return counts             # <<<<<<<<<<<<<<
     *
     *     def _get_types(self, f):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_counts);
      __pyx_r = __pyx_v_counts;
      goto __pyx_L0;

     2273:

     2274:     def _get_types(self, f):

    /* "pandas/internals.pyx":2274
     *         return counts
     *
     *     def _get_types(self, f):             # <<<<<<<<<<<<<<
     *         """ return a list of the f per item """
     *         self._consolidate_inplace()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_27_get_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_26_get_types[] = " return a list of the f per item ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_27_get_types = {__Pyx_NAMESTR("_get_types"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_27_get_types, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_26_get_types)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_27_get_types(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_f = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_types (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_f,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_get_types", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2274; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_get_types") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2274; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_f = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_get_types", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2274; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._get_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_26_get_types(__pyx_self, __pyx_v_self, __pyx_v_f);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_26_get_types(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_f) {
      PyObject *__pyx_v_l = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_v = NULL;
      PyObject *__pyx_v_rl = NULL;
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_v_i = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_types", 0);

      /* "pandas/internals.pyx":2274
     *         return counts
     *
     *     def _get_types(self, f):             # <<<<<<<<<<<<<<
     *         """ return a list of the f per item """
     *         self._consolidate_inplace()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.BlockManager._get_types", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_l);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XDECREF(__pyx_v_rl);
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2274
     *         return counts
     *
     *     def _get_types(self, f):             # <<<<<<<<<<<<<<
     *         """ return a list of the f per item """
     *         self._consolidate_inplace()
     */
      __pyx_tuple__504 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_f, __pyx_n_s_l, __pyx_n_s_b, __pyx_n_s_v, __pyx_n_s_rl, __pyx_n_s_ref_locs_2, __pyx_n_s_i, __pyx_n_s_item); if (unlikely(!__pyx_tuple__504)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__504);
      __Pyx_GIVEREF(__pyx_tuple__504);

      /* "pandas/internals.pyx":2274
     *         return counts
     *
     *     def _get_types(self, f):             # <<<<<<<<<<<<<<
     *         """ return a list of the f per item """
     *         self._consolidate_inplace()
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_27_get_types, 0, __pyx_n_s_BlockManager__get_types, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__505)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_types, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__505 = (PyObject*)__Pyx_PyCode_New(2, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__504, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_types, 2274, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__505)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2275:         """ return a list of the f per item """

     2276:         self._consolidate_inplace()

      /* "pandas/internals.pyx":2276
     *     def _get_types(self, f):
     *         """ return a list of the f per item """
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *
     *         # unique
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2276; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2276; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2277:

     2278:         # unique

     2279:         if self.items.is_unique:

      /* "pandas/internals.pyx":2279
     *
     *         # unique
     *         if self.items.is_unique:             # <<<<<<<<<<<<<<
     *             l = [ None ] * len(self.items)
     *             for b in self.blocks:
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2279; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_3) {

     2280:             l = [ None ] * len(self.items)

        /* "pandas/internals.pyx":2280
     *         # unique
     *         if self.items.is_unique:
     *             l = [ None ] * len(self.items)             # <<<<<<<<<<<<<<
     *             for b in self.blocks:
     *                 v = f(b)
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyList_New(1 * ((__pyx_t_4<0) ? 0:__pyx_t_4)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        { Py_ssize_t __pyx_temp;
          for (__pyx_temp=0; __pyx_temp < __pyx_t_4; __pyx_temp++) {
            __Pyx_INCREF(Py_None);
            PyList_SET_ITEM(__pyx_t_1, __pyx_temp, Py_None);
            __Pyx_GIVEREF(Py_None);
          }
        }
        __pyx_v_l = ((PyObject*)__pyx_t_1);
        __pyx_t_1 = 0;

     2281:             for b in self.blocks:

        /* "pandas/internals.pyx":2281
     *         if self.items.is_unique:
     *             l = [ None ] * len(self.items)
     *             for b in self.blocks:             # <<<<<<<<<<<<<<
     *                 v = f(b)
     *                 for rl in b.ref_locs:
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
          __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
          __pyx_t_5 = NULL;
        } else {
          __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        for (;;) {
          if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_5(__pyx_t_2);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_1);
          __pyx_t_1 = 0;

     2282:                 v = f(b)

          /* "pandas/internals.pyx":2282
     *             l = [ None ] * len(self.items)
     *             for b in self.blocks:
     *                 v = f(b)             # <<<<<<<<<<<<<<
     *                 for rl in b.ref_locs:
     *                     l[rl] = v
     */
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2282; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_b);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_b);
          __Pyx_GIVEREF(__pyx_v_b);
          __pyx_t_6 = PyObject_Call(__pyx_v_f, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2282; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_6);
          __pyx_t_6 = 0;

     2283:                 for rl in b.ref_locs:

          /* "pandas/internals.pyx":2283
     *             for b in self.blocks:
     *                 v = f(b)
     *                 for rl in b.ref_locs:             # <<<<<<<<<<<<<<
     *                     l[rl] = v
     *             return l
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ref_locs_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
            __pyx_t_1 = __pyx_t_6; __Pyx_INCREF(__pyx_t_1); __pyx_t_7 = 0;
            __pyx_t_8 = NULL;
          } else {
            __pyx_t_7 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          for (;;) {
            if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
              if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_1)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
              if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_6 = __pyx_t_8(__pyx_t_1);
              if (unlikely(!__pyx_t_6)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_6);
            }
            __Pyx_XDECREF_SET(__pyx_v_rl, __pyx_t_6);
            __pyx_t_6 = 0;

     2284:                     l[rl] = v

            /* "pandas/internals.pyx":2284
     *                 v = f(b)
     *                 for rl in b.ref_locs:
     *                     l[rl] = v             # <<<<<<<<<<<<<<
     *             return l
     *
     */
            if (unlikely(PyObject_SetItem(__pyx_v_l, __pyx_v_rl, __pyx_v_v) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2284; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2285:             return l

        /* "pandas/internals.pyx":2285
     *                 for rl in b.ref_locs:
     *                     l[rl] = v
     *             return l             # <<<<<<<<<<<<<<
     *
     *         # non-unique
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_l);
        __pyx_r = __pyx_v_l;
        goto __pyx_L0;
      }

     2286:

     2287:         # non-unique

     2288:         ref_locs = self._set_ref_locs()

      /* "pandas/internals.pyx":2288
     *
     *         # non-unique
     *         ref_locs = self._set_ref_locs()             # <<<<<<<<<<<<<<
     *         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]
     *
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_ref_locs = __pyx_t_1;
      __pyx_t_1 = 0;

     2289:         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]

      /* "pandas/internals.pyx":2289
     *         # non-unique
     *         ref_locs = self._set_ref_locs()
     *         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]             # <<<<<<<<<<<<<<
     *
     *     def get_dtype_counts(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_2 = __pyx_int_0;
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
        __pyx_t_9 = __pyx_t_6; __Pyx_INCREF(__pyx_t_9); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_5 = Py_TYPE(__pyx_t_9)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_9)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_9)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_9, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_9)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_9)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_9, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_6 = __pyx_t_5(__pyx_t_9);
          if (unlikely(!__pyx_t_6)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_6);
        }
        __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_6);
        __pyx_t_6 = 0;
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_2);
        __pyx_t_6 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_2);
        __pyx_t_2 = __pyx_t_6;
        __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_GetItem(__pyx_v_ref_locs, __pyx_v_i); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_10 = __Pyx_GetItemInt(__pyx_t_6, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_10);
        __pyx_t_10 = 0;
        __pyx_t_10 = PyObject_Call(__pyx_v_f, __pyx_t_6, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_10))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      }
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2290:

     2291:     def get_dtype_counts(self):

    /* "pandas/internals.pyx":2291
     *         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]
     *
     *     def get_dtype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_29get_dtype_counts(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_29get_dtype_counts = {__Pyx_NAMESTR("get_dtype_counts"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_29get_dtype_counts, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_29get_dtype_counts(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_dtype_counts (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_28get_dtype_counts(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":2291
     *         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]
     *
     *     def get_dtype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_28get_dtype_counts(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_dtype_counts", 0);

      /* "pandas/internals.pyx":2291
     *         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]
     *
     *     def get_dtype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_dtype_counts", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2291
     *         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]
     *
     *     def get_dtype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     */
      __pyx_tuple__506 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__506)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2291; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__506);
      __Pyx_GIVEREF(__pyx_tuple__506);

      /* "pandas/internals.pyx":2291
     *         return [ f(ref_locs[i][0]) for i, item in enumerate(self.items) ]
     *
     *     def get_dtype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_29get_dtype_counts, 0, __pyx_n_s_BlockManager_get_dtype_counts, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__507)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2291; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_dtype_counts, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2291; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__507 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__506, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_dtype_counts, 2291, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__507)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2291; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2292:         return self._get_counts(lambda b: b.dtype.name)

    /* "pandas/internals.pyx":2292
     *
     *     def get_dtype_counts(self):
     *         return self._get_counts(lambda b: b.dtype.name)             # <<<<<<<<<<<<<<
     *
     *     def get_ftype_counts(self):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_16get_dtype_counts_lambda7(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_16get_dtype_counts_lambda7 = {__Pyx_NAMESTR("lambda7"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_16get_dtype_counts_lambda7, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_16get_dtype_counts_lambda7(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda7 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda7(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda7(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda7", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_name); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_dtype_counts.lambda7", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2292
     *
     *     def get_dtype_counts(self):
     *         return self._get_counts(lambda b: b.dtype.name)             # <<<<<<<<<<<<<<
     *
     *     def get_ftype_counts(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_counts); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_16get_dtype_counts_lambda7, 0, __pyx_n_s_BlockManager_get_dtype_counts_lo, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2293:

     2294:     def get_ftype_counts(self):

    /* "pandas/internals.pyx":2294
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     *     def get_ftype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.ftype)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_31get_ftype_counts(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_31get_ftype_counts = {__Pyx_NAMESTR("get_ftype_counts"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_31get_ftype_counts, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_31get_ftype_counts(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_ftype_counts (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_30get_ftype_counts(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":2294
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     *     def get_ftype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.ftype)
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_30get_ftype_counts(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_ftype_counts", 0);

      /* "pandas/internals.pyx":2294
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     *     def get_ftype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.ftype)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_ftype_counts", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2294
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     *     def get_ftype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.ftype)
     *
     */
      __pyx_tuple__508 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__508)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__508);
      __Pyx_GIVEREF(__pyx_tuple__508);

      /* "pandas/internals.pyx":2294
     *         return self._get_counts(lambda b: b.dtype.name)
     *
     *     def get_ftype_counts(self):             # <<<<<<<<<<<<<<
     *         return self._get_counts(lambda b: b.ftype)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_31get_ftype_counts, 0, __pyx_n_s_BlockManager_get_ftype_counts, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__509)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_ftype_counts, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__509 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__508, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_ftype_counts, 2294, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__509)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2295:         return self._get_counts(lambda b: b.ftype)

    /* "pandas/internals.pyx":2295
     *
     *     def get_ftype_counts(self):
     *         return self._get_counts(lambda b: b.ftype)             # <<<<<<<<<<<<<<
     *
     *     def get_dtypes(self):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_16get_ftype_counts_lambda8(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_16get_ftype_counts_lambda8 = {__Pyx_NAMESTR("lambda8"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_16get_ftype_counts_lambda8, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_16get_ftype_counts_lambda8(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda8 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda8(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda8(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda8", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ftype_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_ftype_counts.lambda8", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2295
     *
     *     def get_ftype_counts(self):
     *         return self._get_counts(lambda b: b.ftype)             # <<<<<<<<<<<<<<
     *
     *     def get_dtypes(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_counts); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_16get_ftype_counts_lambda8, 0, __pyx_n_s_BlockManager_get_ftype_counts_lo, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2296:

     2297:     def get_dtypes(self):

    /* "pandas/internals.pyx":2297
     *         return self._get_counts(lambda b: b.ftype)
     *
     *     def get_dtypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.dtype)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_33get_dtypes(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_33get_dtypes = {__Pyx_NAMESTR("get_dtypes"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_33get_dtypes, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_33get_dtypes(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_dtypes (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_32get_dtypes(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":2297
     *         return self._get_counts(lambda b: b.ftype)
     *
     *     def get_dtypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.dtype)
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_32get_dtypes(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_dtypes", 0);

      /* "pandas/internals.pyx":2297
     *         return self._get_counts(lambda b: b.ftype)
     *
     *     def get_dtypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.dtype)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_dtypes", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2297
     *         return self._get_counts(lambda b: b.ftype)
     *
     *     def get_dtypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.dtype)
     *
     */
      __pyx_tuple__510 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__510)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2297; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__510);
      __Pyx_GIVEREF(__pyx_tuple__510);

      /* "pandas/internals.pyx":2297
     *         return self._get_counts(lambda b: b.ftype)
     *
     *     def get_dtypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.dtype)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_33get_dtypes, 0, __pyx_n_s_BlockManager_get_dtypes, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__511)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2297; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_dtypes, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2297; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__511 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__510, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_dtypes, 2297, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__511)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2297; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2298:         return self._get_types(lambda b: b.dtype)

    /* "pandas/internals.pyx":2298
     *
     *     def get_dtypes(self):
     *         return self._get_types(lambda b: b.dtype)             # <<<<<<<<<<<<<<
     *
     *     def get_ftypes(self):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_10get_dtypes_lambda9(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_10get_dtypes_lambda9 = {__Pyx_NAMESTR("lambda9"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_10get_dtypes_lambda9, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_10get_dtypes_lambda9(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda9 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda9(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda9(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda9", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2298; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_dtypes.lambda9", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2298
     *
     *     def get_dtypes(self):
     *         return self._get_types(lambda b: b.dtype)             # <<<<<<<<<<<<<<
     *
     *     def get_ftypes(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_types); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2298; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_10get_dtypes_lambda9, 0, __pyx_n_s_BlockManager_get_dtypes_locals_l, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2298; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2298; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2298; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2299:

     2300:     def get_ftypes(self):

    /* "pandas/internals.pyx":2300
     *         return self._get_types(lambda b: b.dtype)
     *
     *     def get_ftypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.ftype)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_35get_ftypes(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_35get_ftypes = {__Pyx_NAMESTR("get_ftypes"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_35get_ftypes, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_35get_ftypes(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_ftypes (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_34get_ftypes(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":2300
     *         return self._get_types(lambda b: b.dtype)
     *
     *     def get_ftypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.ftype)
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_34get_ftypes(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_ftypes", 0);

      /* "pandas/internals.pyx":2300
     *         return self._get_types(lambda b: b.dtype)
     *
     *     def get_ftypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.ftype)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_ftypes", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2300
     *         return self._get_types(lambda b: b.dtype)
     *
     *     def get_ftypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.ftype)
     *
     */
      __pyx_tuple__512 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__512)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__512);
      __Pyx_GIVEREF(__pyx_tuple__512);

      /* "pandas/internals.pyx":2300
     *         return self._get_types(lambda b: b.dtype)
     *
     *     def get_ftypes(self):             # <<<<<<<<<<<<<<
     *         return self._get_types(lambda b: b.ftype)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_35get_ftypes, 0, __pyx_n_s_BlockManager_get_ftypes, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__513)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_ftypes, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__513 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__512, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_ftypes, 2300, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__513)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2301:         return self._get_types(lambda b: b.ftype)

    /* "pandas/internals.pyx":2301
     *
     *     def get_ftypes(self):
     *         return self._get_types(lambda b: b.ftype)             # <<<<<<<<<<<<<<
     *
     *     def __getstate__(self):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_10get_ftypes_lambda10(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_10get_ftypes_lambda10 = {__Pyx_NAMESTR("lambda10"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_10get_ftypes_lambda10, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_10get_ftypes_lambda10(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda10 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda10(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda10(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda10", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ftype_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_ftypes.lambda10", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2301
     *
     *     def get_ftypes(self):
     *         return self._get_types(lambda b: b.ftype)             # <<<<<<<<<<<<<<
     *
     *     def __getstate__(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_types); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_10get_ftypes_lambda10, 0, __pyx_n_s_BlockManager_get_ftypes_locals_l, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2302:

     2303:     def __getstate__(self):

    /* "pandas/internals.pyx":2303
     *         return self._get_types(lambda b: b.ftype)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         block_values = [b.values for b in self.blocks]
     *         block_items = [b.items for b in self.blocks]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_37__getstate__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_37__getstate__ = {__Pyx_NAMESTR("__getstate__"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_37__getstate__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_37__getstate__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__getstate__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_36__getstate__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_36__getstate__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_block_values = NULL;
      PyObject *__pyx_v_block_items = NULL;
      PyObject *__pyx_v_axes_array = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_ax = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__getstate__", 0);

      /* "pandas/internals.pyx":2303
     *         return self._get_types(lambda b: b.ftype)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         block_values = [b.values for b in self.blocks]
     *         block_items = [b.items for b in self.blocks]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.__getstate__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_block_values);
      __Pyx_XDECREF(__pyx_v_block_items);
      __Pyx_XDECREF(__pyx_v_axes_array);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_ax);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2303
     *         return self._get_types(lambda b: b.ftype)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         block_values = [b.values for b in self.blocks]
     *         block_items = [b.items for b in self.blocks]
     */
      __pyx_tuple__514 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_block_values, __pyx_n_s_block_items, __pyx_n_s_axes_array, __pyx_n_s_b, __pyx_n_s_ax); if (unlikely(!__pyx_tuple__514)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__514);
      __Pyx_GIVEREF(__pyx_tuple__514);

      /* "pandas/internals.pyx":2303
     *         return self._get_types(lambda b: b.ftype)
     *
     *     def __getstate__(self):             # <<<<<<<<<<<<<<
     *         block_values = [b.values for b in self.blocks]
     *         block_items = [b.items for b in self.blocks]
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_37__getstate__, 0, __pyx_n_s_BlockManager___getstate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__515)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_getstate, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__515 = (PyObject*)__Pyx_PyCode_New(1, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__514, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_getstate, 2303, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__515)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2304:         block_values = [b.values for b in self.blocks]

      /* "pandas/internals.pyx":2304
     *
     *     def __getstate__(self):
     *         block_values = [b.values for b in self.blocks]             # <<<<<<<<<<<<<<
     *         block_items = [b.items for b in self.blocks]
     *         axes_array = [ax for ax in self.axes]
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_2))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_block_values = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     2305:         block_items = [b.items for b in self.blocks]

      /* "pandas/internals.pyx":2305
     *     def __getstate__(self):
     *         block_values = [b.values for b in self.blocks]
     *         block_items = [b.items for b in self.blocks]             # <<<<<<<<<<<<<<
     *         axes_array = [ax for ax in self.axes]
     *         return axes_array, block_values, block_items
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
        __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_5(__pyx_t_2);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_3))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_block_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     2306:         axes_array = [ax for ax in self.axes]

      /* "pandas/internals.pyx":2306
     *         block_values = [b.values for b in self.blocks]
     *         block_items = [b.items for b in self.blocks]
     *         axes_array = [ax for ax in self.axes]             # <<<<<<<<<<<<<<
     *         return axes_array, block_values, block_items
     *
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_ax, __pyx_t_2);
        __pyx_t_2 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_v_ax))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2306; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_axes_array = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     2307:         return axes_array, block_values, block_items

      /* "pandas/internals.pyx":2307
     *         block_items = [b.items for b in self.blocks]
     *         axes_array = [ax for ax in self.axes]
     *         return axes_array, block_values, block_items             # <<<<<<<<<<<<<<
     *
     *     def __setstate__(self, state):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2307; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_axes_array);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_axes_array);
      __Pyx_GIVEREF(__pyx_v_axes_array);
      __Pyx_INCREF(__pyx_v_block_values);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_block_values);
      __Pyx_GIVEREF(__pyx_v_block_values);
      __Pyx_INCREF(__pyx_v_block_items);
      PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_block_items);
      __Pyx_GIVEREF(__pyx_v_block_items);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2308:

     2309:     def __setstate__(self, state):

    /* "pandas/internals.pyx":2309
     *         return axes_array, block_values, block_items
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         # discard anything after 3rd, support beta pickling format for a little
     *         # while longer
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_39__setstate__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_39__setstate__ = {__Pyx_NAMESTR("__setstate__"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_39__setstate__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_39__setstate__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_state = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__setstate__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_state,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_state)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__setstate__", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2309; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__setstate__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2309; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_state = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__setstate__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2309; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.__setstate__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_38__setstate__(__pyx_self, __pyx_v_self, __pyx_v_state);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_38__setstate__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_state) {
      PyObject *__pyx_v_ax_arrays = NULL;
      PyObject *__pyx_v_bvalues = NULL;
      PyObject *__pyx_v_bitems = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_ax = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__setstate__", 0);

      /* "pandas/internals.pyx":2309
     *         return axes_array, block_values, block_items
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         # discard anything after 3rd, support beta pickling format for a little
     *         # while longer
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.BlockManager.__setstate__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ax_arrays);
      __Pyx_XDECREF(__pyx_v_bvalues);
      __Pyx_XDECREF(__pyx_v_bitems);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_ax);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2309
     *         return axes_array, block_values, block_items
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         # discard anything after 3rd, support beta pickling format for a little
     *         # while longer
     */
      __pyx_tuple__516 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_state, __pyx_n_s_ax_arrays, __pyx_n_s_bvalues, __pyx_n_s_bitems, __pyx_n_s_blocks, __pyx_n_s_values, __pyx_n_s_items, __pyx_n_s_blk, __pyx_n_s_ax); if (unlikely(!__pyx_tuple__516)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__516);
      __Pyx_GIVEREF(__pyx_tuple__516);

      /* "pandas/internals.pyx":2309
     *         return axes_array, block_values, block_items
     *
     *     def __setstate__(self, state):             # <<<<<<<<<<<<<<
     *         # discard anything after 3rd, support beta pickling format for a little
     *         # while longer
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_39__setstate__, 0, __pyx_n_s_BlockManager___setstate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__517)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_setstate, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__517 = (PyObject*)__Pyx_PyCode_New(2, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__516, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_setstate, 2309, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__517)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2310:         # discard anything after 3rd, support beta pickling format for a little

     2311:         # while longer

     2312:         ax_arrays, bvalues, bitems = state[:3]

      /* "pandas/internals.pyx":2312
     *         # discard anything after 3rd, support beta pickling format for a little
     *         # while longer
     *         ax_arrays, bvalues, bitems = state[:3]             # <<<<<<<<<<<<<<
     *
     *         self.axes = [_ensure_index(ax) for ax in ax_arrays]
     */
      __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_v_state, 0, 3, NULL, NULL, &__pyx_slice__53, 0, 1, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
        PyObject* sequence = __pyx_t_1;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 3)) {
          if (size > 3) __Pyx_RaiseTooManyValuesError(3);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
          __pyx_t_4 = PyTuple_GET_ITEM(sequence, 2);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
          __pyx_t_4 = PyList_GET_ITEM(sequence, 2);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_4);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        #endif
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_3 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_3)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_4);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = NULL;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_ax_arrays = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_v_bvalues = __pyx_t_3;
      __pyx_t_3 = 0;
      __pyx_v_bitems = __pyx_t_4;
      __pyx_t_4 = 0;

      /* "pandas/internals.pyx":2312
     *         # discard anything after 3rd, support beta pickling format for a little
     *         # while longer
     *         ax_arrays, bvalues, bitems = state[:3]             # <<<<<<<<<<<<<<
     *
     *         self.axes = [_ensure_index(ax) for ax in ax_arrays]
     */
      __pyx_slice__53 = PySlice_New(Py_None, __pyx_int_3, Py_None); if (unlikely(!__pyx_slice__53)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__53);
      __Pyx_GIVEREF(__pyx_slice__53);

     2313:

     2314:         self.axes = [_ensure_index(ax) for ax in ax_arrays]

      /* "pandas/internals.pyx":2314
     *         ax_arrays, bvalues, bitems = state[:3]
     *
     *         self.axes = [_ensure_index(ax) for ax in ax_arrays]             # <<<<<<<<<<<<<<
     *         self.axes = _handle_legacy_indexes(self.axes)
     *
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_v_ax_arrays) || PyTuple_CheckExact(__pyx_v_ax_arrays)) {
        __pyx_t_4 = __pyx_v_ax_arrays; __Pyx_INCREF(__pyx_t_4); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_7 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_ax_arrays); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_8 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_8(__pyx_t_4);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_XDECREF_SET(__pyx_v_ax, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_ax);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_ax);
        __Pyx_GIVEREF(__pyx_v_ax);
        __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_5))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_axes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2315:         self.axes = _handle_legacy_indexes(self.axes)

      /* "pandas/internals.pyx":2315
     *
     *         self.axes = [_ensure_index(ax) for ax in ax_arrays]
     *         self.axes = _handle_legacy_indexes(self.axes)             # <<<<<<<<<<<<<<
     *
     *         blocks = []
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_handle_legacy_indexes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_axes, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2315; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     2316:

     2317:         blocks = []

      /* "pandas/internals.pyx":2317
     *         self.axes = _handle_legacy_indexes(self.axes)
     *
     *         blocks = []             # <<<<<<<<<<<<<<
     *         for values, items in zip(bvalues, bitems):
     *
     */
      __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2317; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_blocks = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

     2318:         for values, items in zip(bvalues, bitems):

      /* "pandas/internals.pyx":2318
     *
     *         blocks = []
     *         for values, items in zip(bvalues, bitems):             # <<<<<<<<<<<<<<
     *
     *             # numpy < 1.7 pickle compat
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_bvalues);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_bvalues);
      __Pyx_GIVEREF(__pyx_v_bvalues);
      __Pyx_INCREF(__pyx_v_bitems);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_bitems);
      __Pyx_GIVEREF(__pyx_v_bitems);
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_5 = __pyx_t_1; __Pyx_INCREF(__pyx_t_5); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_7 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_8 = Py_TYPE(__pyx_t_5)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_5)) {
          if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_1); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_5)) {
          if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_7); __Pyx_INCREF(__pyx_t_1); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_8(__pyx_t_5);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
          PyObject* sequence = __pyx_t_1;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_4 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_2);
          #else
          __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          #endif
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_3 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_6 = Py_TYPE(__pyx_t_3)->tp_iternext;
          index = 0; __pyx_t_4 = __pyx_t_6(__pyx_t_3); if (unlikely(!__pyx_t_4)) goto __pyx_L9_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_4);
          index = 1; __pyx_t_2 = __pyx_t_6(__pyx_t_3); if (unlikely(!__pyx_t_2)) goto __pyx_L9_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_3), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_6 = NULL;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L10_unpacking_done;
          __pyx_L9_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_6 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2318; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L10_unpacking_done:;
        }
        __Pyx_XDECREF_SET(__pyx_v_values, __pyx_t_4);
        __pyx_t_4 = 0;
        __Pyx_XDECREF_SET(__pyx_v_items, __pyx_t_2);
        __pyx_t_2 = 0;

     2319:

     2320:             # numpy < 1.7 pickle compat

     2321:             if values.dtype == 'M8[us]':

        /* "pandas/internals.pyx":2321
     *
     *             # numpy < 1.7 pickle compat
     *             if values.dtype == 'M8[us]':             # <<<<<<<<<<<<<<
     *                 values = values.astype('M8[ns]')
     *
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2321; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_9 = (__Pyx_PyString_Equals(__pyx_t_1, __pyx_kp_s_M8_us, Py_EQ)); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2321; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (__pyx_t_9) {

     2322:                 values = values.astype('M8[ns]')

          /* "pandas/internals.pyx":2322
     *             # numpy < 1.7 pickle compat
     *             if values.dtype == 'M8[us]':
     *                 values = values.astype('M8[ns]')             # <<<<<<<<<<<<<<
     *
     *             blk = make_block(values, items, self.axes[0])
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_astype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_tuple__54, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_2);
          __pyx_t_2 = 0;
          goto __pyx_L11;
        }
        __pyx_L11:;

      /* "pandas/internals.pyx":2322
     *             # numpy < 1.7 pickle compat
     *             if values.dtype == 'M8[us]':
     *                 values = values.astype('M8[ns]')             # <<<<<<<<<<<<<<
     *
     *             blk = make_block(values, items, self.axes[0])
     */
      __pyx_tuple__54 = PyTuple_Pack(1, __pyx_kp_s_M8_ns); if (unlikely(!__pyx_tuple__54)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__54);
      __Pyx_GIVEREF(__pyx_tuple__54);

     2323:

     2324:             blk = make_block(values, items, self.axes[0])

        /* "pandas/internals.pyx":2324
     *                 values = values.astype('M8[ns]')
     *
     *             blk = make_block(values, items, self.axes[0])             # <<<<<<<<<<<<<<
     *             blocks.append(blk)
     *         self.blocks = blocks
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2324; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2324; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2324; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2324; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2324; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_4);
        __pyx_t_4 = 0;

     2325:             blocks.append(blk)

        /* "pandas/internals.pyx":2325
     *
     *             blk = make_block(values, items, self.axes[0])
     *             blocks.append(blk)             # <<<<<<<<<<<<<<
     *         self.blocks = blocks
     *
     */
        __pyx_t_10 = __Pyx_PyList_Append(__pyx_v_blocks, __pyx_v_blk); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2325; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2326:         self.blocks = blocks

      /* "pandas/internals.pyx":2326
     *             blk = make_block(values, items, self.axes[0])
     *             blocks.append(blk)
     *         self.blocks = blocks             # <<<<<<<<<<<<<<
     *
     *         self._post_setstate()
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_blocks, __pyx_v_blocks) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2327:

     2328:         self._post_setstate()

      /* "pandas/internals.pyx":2328
     *         self.blocks = blocks
     *
     *         self._post_setstate()             # <<<<<<<<<<<<<<
     *
     *     def _post_setstate(self):
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_post_setstate); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2328; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2328; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     2329:

     2330:     def _post_setstate(self):

    /* "pandas/internals.pyx":2330
     *         self._post_setstate()
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._is_consolidated = False
     *         self._known_consolidated = False
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_41_post_setstate(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_41_post_setstate = {__Pyx_NAMESTR("_post_setstate"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_41_post_setstate, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_41_post_setstate(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_post_setstate (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_40_post_setstate(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_40_post_setstate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_post_setstate", 0);

      /* "pandas/internals.pyx":2330
     *         self._post_setstate()
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._is_consolidated = False
     *         self._known_consolidated = False
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.BlockManager._post_setstate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2330
     *         self._post_setstate()
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._is_consolidated = False
     *         self._known_consolidated = False
     */
      __pyx_tuple__518 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__518)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2330; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__518);
      __Pyx_GIVEREF(__pyx_tuple__518);

      /* "pandas/internals.pyx":2330
     *         self._post_setstate()
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._is_consolidated = False
     *         self._known_consolidated = False
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_41_post_setstate, 0, __pyx_n_s_BlockManager__post_setstate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__519)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2330; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_post_setstate, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2330; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__519 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__518, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_post_setstate, 2330, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__519)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2330; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2331:         self._is_consolidated = False

      /* "pandas/internals.pyx":2331
     *
     *     def _post_setstate(self):
     *         self._is_consolidated = False             # <<<<<<<<<<<<<<
     *         self._known_consolidated = False
     *         self._set_has_sparse()
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_is_consolidated, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2331; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2332:         self._known_consolidated = False

      /* "pandas/internals.pyx":2332
     *     def _post_setstate(self):
     *         self._is_consolidated = False
     *         self._known_consolidated = False             # <<<<<<<<<<<<<<
     *         self._set_has_sparse()
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_known_consolidated, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2332; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2333:         self._set_has_sparse()

      /* "pandas/internals.pyx":2333
     *         self._is_consolidated = False
     *         self._known_consolidated = False
     *         self._set_has_sparse()             # <<<<<<<<<<<<<<
     *
     *     def __len__(self):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_has_sparse); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2333; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2333; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2334:

     2335:     def __len__(self):

    /* "pandas/internals.pyx":2335
     *         self._set_has_sparse()
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.items)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_43__len__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_43__len__ = {__Pyx_NAMESTR("__len__"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_43__len__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_43__len__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__len__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_42__len__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_42__len__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__len__", 0);

      /* "pandas/internals.pyx":2335
     *         self._set_has_sparse()
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.items)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.__len__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2335
     *         self._set_has_sparse()
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.items)
     *
     */
      __pyx_tuple__520 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__520)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__520);
      __Pyx_GIVEREF(__pyx_tuple__520);

      /* "pandas/internals.pyx":2335
     *         self._set_has_sparse()
     *
     *     def __len__(self):             # <<<<<<<<<<<<<<
     *         return len(self.items)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_43__len__, 0, __pyx_n_s_BlockManager___len, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__521)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_len, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__521 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__520, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_len, 2335, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__521)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2336:         return len(self.items)

      /* "pandas/internals.pyx":2336
     *
     *     def __len__(self):
     *         return len(self.items)             # <<<<<<<<<<<<<<
     *
     *     def __unicode__(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2336; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2336; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2336; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2337:

     2338:     def __unicode__(self):

    /* "pandas/internals.pyx":2338
     *         return len(self.items)
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *         output = com.pprint_thing(self.__class__.__name__)
     *         for i, ax in enumerate(self.axes):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_45__unicode__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_45__unicode__ = {__Pyx_NAMESTR("__unicode__"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_45__unicode__, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_45__unicode__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__unicode__ (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_44__unicode__(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_44__unicode__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_output = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_ax = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__unicode__", 0);

      /* "pandas/internals.pyx":2338
     *         return len(self.items)
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *         output = com.pprint_thing(self.__class__.__name__)
     *         for i, ax in enumerate(self.axes):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager.__unicode__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_output);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_ax);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2338
     *         return len(self.items)
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *         output = com.pprint_thing(self.__class__.__name__)
     *         for i, ax in enumerate(self.axes):
     */
      __pyx_tuple__522 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_output, __pyx_n_s_i, __pyx_n_s_ax, __pyx_n_s_block); if (unlikely(!__pyx_tuple__522)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__522);
      __Pyx_GIVEREF(__pyx_tuple__522);

      /* "pandas/internals.pyx":2338
     *         return len(self.items)
     *
     *     def __unicode__(self):             # <<<<<<<<<<<<<<
     *         output = com.pprint_thing(self.__class__.__name__)
     *         for i, ax in enumerate(self.axes):
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_45__unicode__, 0, __pyx_n_s_BlockManager___unicode, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__523)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_unicode, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__523 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__522, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_unicode, 2338, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__523)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2338; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2339:         output = com.pprint_thing(self.__class__.__name__)

      /* "pandas/internals.pyx":2339
     *
     *     def __unicode__(self):
     *         output = com.pprint_thing(self.__class__.__name__)             # <<<<<<<<<<<<<<
     *         for i, ax in enumerate(self.axes):
     *             if i == 0:
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_pprint_thing); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_name_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_output = __pyx_t_3;
      __pyx_t_3 = 0;

     2340:         for i, ax in enumerate(self.axes):

      /* "pandas/internals.pyx":2340
     *     def __unicode__(self):
     *         output = com.pprint_thing(self.__class__.__name__)
     *         for i, ax in enumerate(self.axes):             # <<<<<<<<<<<<<<
     *             if i == 0:
     *                 output += '\nItems: %s' % ax
     */
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_3 = __pyx_int_0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_5(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_ax, __pyx_t_1);
        __pyx_t_1 = 0;
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
        __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3);
        __pyx_t_3 = __pyx_t_1;
        __pyx_t_1 = 0;

     2341:             if i == 0:

        /* "pandas/internals.pyx":2341
     *         output = com.pprint_thing(self.__class__.__name__)
     *         for i, ax in enumerate(self.axes):
     *             if i == 0:             # <<<<<<<<<<<<<<
     *                 output += '\nItems: %s' % ax
     *             else:
     */
        __pyx_t_1 = PyObject_RichCompare(__pyx_v_i, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (__pyx_t_6) {

     2342:                 output += '\nItems: %s' % ax

          /* "pandas/internals.pyx":2342
     *         for i, ax in enumerate(self.axes):
     *             if i == 0:
     *                 output += '\nItems: %s' % ax             # <<<<<<<<<<<<<<
     *             else:
     *                 output += '\nAxis %d: %s' % (i, ax)
     */
          __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Items_s, __pyx_v_ax); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_7 = PyNumber_InPlaceAdd(__pyx_v_output, __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF_SET(__pyx_v_output, __pyx_t_7);
          __pyx_t_7 = 0;
          goto __pyx_L5;
        }
        /*else*/ {

     2343:             else:

     2344:                 output += '\nAxis %d: %s' % (i, ax)

          /* "pandas/internals.pyx":2344
     *                 output += '\nItems: %s' % ax
     *             else:
     *                 output += '\nAxis %d: %s' % (i, ax)             # <<<<<<<<<<<<<<
     *
     *         for block in self.blocks:
     */
          __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_ax);
          PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_ax);
          __Pyx_GIVEREF(__pyx_v_ax);
          __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Axis_d_s, __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_7 = PyNumber_InPlaceAdd(__pyx_v_output, __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF_SET(__pyx_v_output, __pyx_t_7);
          __pyx_t_7 = 0;
        }
        __pyx_L5:;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2345:

     2346:         for block in self.blocks:

      /* "pandas/internals.pyx":2346
     *                 output += '\nAxis %d: %s' % (i, ax)
     *
     *         for block in self.blocks:             # <<<<<<<<<<<<<<
     *             output += '\n%s' % com.pprint_thing(block)
     *         return output
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2346; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
        __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2346; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2346; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2346; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2346; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2346; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_5(__pyx_t_2);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2346; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_3);
        __pyx_t_3 = 0;

     2347:             output += '\n%s' % com.pprint_thing(block)

        /* "pandas/internals.pyx":2347
     *
     *         for block in self.blocks:
     *             output += '\n%s' % com.pprint_thing(block)             # <<<<<<<<<<<<<<
     *         return output
     *
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_pprint_thing); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_block);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_block);
        __Pyx_GIVEREF(__pyx_v_block);
        __pyx_t_1 = PyObject_Call(__pyx_t_7, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_s_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_output, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2347; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_output, __pyx_t_1);
        __pyx_t_1 = 0;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2348:         return output

      /* "pandas/internals.pyx":2348
     *         for block in self.blocks:
     *             output += '\n%s' % com.pprint_thing(block)
     *         return output             # <<<<<<<<<<<<<<
     *
     *     def _verify_integrity(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_output);
      __pyx_r = __pyx_v_output;
      goto __pyx_L0;

     2349:

     2350:     def _verify_integrity(self):

    /* "pandas/internals.pyx":2350
     *         return output
     *
     *     def _verify_integrity(self):             # <<<<<<<<<<<<<<
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_47_verify_integrity(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_47_verify_integrity = {__Pyx_NAMESTR("_verify_integrity"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_47_verify_integrity, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_47_verify_integrity(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_verify_integrity (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_46_verify_integrity(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_17_verify_integrity_2generator2(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":2350
     *         return output
     *
     *     def _verify_integrity(self):             # <<<<<<<<<<<<<<
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_46_verify_integrity(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_9__verify_integrity *__pyx_cur_scope;
      PyObject *__pyx_v_mgr_shape = NULL;
      PyObject *__pyx_v_tot_items = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_verify_integrity", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_9__verify_integrity *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_9__verify_integrity(__pyx_ptype_6pandas_9internals___pyx_scope_struct_9__verify_integrity, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);

      /* "pandas/internals.pyx":2350
     *         return output
     *
     *     def _verify_integrity(self):             # <<<<<<<<<<<<<<
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.BlockManager._verify_integrity", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_mgr_shape);
      __Pyx_XDECREF(__pyx_v_tot_items);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2350
     *         return output
     *
     *     def _verify_integrity(self):             # <<<<<<<<<<<<<<
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)
     */
      __pyx_tuple__524 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_mgr_shape, __pyx_n_s_tot_items, __pyx_n_s_block, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__524)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2350; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__524);
      __Pyx_GIVEREF(__pyx_tuple__524);

      /* "pandas/internals.pyx":2350
     *         return output
     *
     *     def _verify_integrity(self):             # <<<<<<<<<<<<<<
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_47_verify_integrity, 0, __pyx_n_s_BlockManager__verify_integrity, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__525)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2350; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_verify_integrity, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2350; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__525 = (PyObject*)__Pyx_PyCode_New(1, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__524, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_verify_integrity, 2350, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__525)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2350; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":2350
     *         return output
     *
     *     def _verify_integrity(self):             # <<<<<<<<<<<<<<
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_9__verify_integrity {
      PyObject_HEAD
      PyObject *__pyx_v_self;
    };

     2351:         mgr_shape = self.shape

      /* "pandas/internals.pyx":2351
     *
     *     def _verify_integrity(self):
     *         mgr_shape = self.shape             # <<<<<<<<<<<<<<
     *         tot_items = sum(len(x.items) for x in self.blocks)
     *         for block in self.blocks:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_mgr_shape = __pyx_t_1;
      __pyx_t_1 = 0;

     2352:         tot_items = sum(len(x.items) for x in self.blocks)

    /* "pandas/internals.pyx":2352
     *     def _verify_integrity(self):
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)             # <<<<<<<<<<<<<<
     *         for block in self.blocks:
     *             if block.ref_items is not self.items:
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_17_verify_integrity_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_10_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_10_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_10_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_10_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_9__verify_integrity *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_17_verify_integrity_2generator2, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._verify_integrity.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_17_verify_integrity_2generator2(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_x);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_x, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_x, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        __Pyx_XGIVEREF(__pyx_t_2);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_3;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_4;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L6_resume_from_yield:;
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_2);
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_4 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

      /* "pandas/internals.pyx":2352
     *     def _verify_integrity(self):
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)             # <<<<<<<<<<<<<<
     *         for block in self.blocks:
     *             if block.ref_items is not self.items:
     */
      __pyx_t_1 = __pyx_pf_6pandas_9internals_12BlockManager_17_verify_integrity_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_builtin_sum, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_tot_items = __pyx_t_1;
      __pyx_t_1 = 0;

    /* "pandas/internals.pyx":2352
     *     def _verify_integrity(self):
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)             # <<<<<<<<<<<<<<
     *         for block in self.blocks:
     *             if block.ref_items is not self.items:
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_10_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_9__verify_integrity *__pyx_outer_scope;
      PyObject *__pyx_v_x;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     2353:         for block in self.blocks:

      /* "pandas/internals.pyx":2353
     *         mgr_shape = self.shape
     *         tot_items = sum(len(x.items) for x in self.blocks)
     *         for block in self.blocks:             # <<<<<<<<<<<<<<
     *             if block.ref_items is not self.items:
     *                 raise AssertionError("Block ref_items must be BlockManager "
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_1);
        __pyx_t_1 = 0;

     2354:             if block.ref_items is not self.items:

        /* "pandas/internals.pyx":2354
     *         tot_items = sum(len(x.items) for x in self.blocks)
     *         for block in self.blocks:
     *             if block.ref_items is not self.items:             # <<<<<<<<<<<<<<
     *                 raise AssertionError("Block ref_items must be BlockManager "
     *                                      "items")
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2354; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = (__pyx_t_1 != __pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_7 = (__pyx_t_6 != 0);
        if (__pyx_t_7) {

     2355:                 raise AssertionError("Block ref_items must be BlockManager "

          /* "pandas/internals.pyx":2355
     *         for block in self.blocks:
     *             if block.ref_items is not self.items:
     *                 raise AssertionError("Block ref_items must be BlockManager "             # <<<<<<<<<<<<<<
     *                                      "items")
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:
     */
          __pyx_t_5 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__55, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_Raise(__pyx_t_5, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }

      /* "pandas/internals.pyx":2355
     *         for block in self.blocks:
     *             if block.ref_items is not self.items:
     *                 raise AssertionError("Block ref_items must be BlockManager "             # <<<<<<<<<<<<<<
     *                                      "items")
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:
     */
      __pyx_tuple__55 = PyTuple_Pack(1, __pyx_kp_s_Block_ref_items_must_be_BlockMan); if (unlikely(!__pyx_tuple__55)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2355; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__55);
      __Pyx_GIVEREF(__pyx_tuple__55);

     2356:                                      "items")

     2357:             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:

        /* "pandas/internals.pyx":2357
     *                 raise AssertionError("Block ref_items must be BlockManager "
     *                                      "items")
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:             # <<<<<<<<<<<<<<
     *                 construction_error(
     *                     tot_items, block.values.shape[1:], self.axes)
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_is_sparse); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = (!__pyx_t_7);
        if (__pyx_t_6) {
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_values); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = __Pyx_PyObject_GetSlice(__pyx_t_1, 1, 0, NULL, NULL, &__pyx_slice__56, 1, 0, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "pandas/internals.pyx":2357
     *                 raise AssertionError("Block ref_items must be BlockManager "
     *                                      "items")
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:             # <<<<<<<<<<<<<<
     *                 construction_error(
     *                     tot_items, block.values.shape[1:], self.axes)
     */
      __pyx_slice__56 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__56)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__56);
      __Pyx_GIVEREF(__pyx_slice__56);
          __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_v_mgr_shape, 1, 0, NULL, NULL, &__pyx_slice__57, 1, 0, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = PyObject_RichCompare(__pyx_t_5, __pyx_t_1, Py_NE); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_9 = __pyx_t_7;
        } else {
          __pyx_t_9 = __pyx_t_6;
        }
        if (__pyx_t_9) {
      __pyx_slice__57 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__57)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__57);
      __Pyx_GIVEREF(__pyx_slice__57);

     2358:                 construction_error(

          /* "pandas/internals.pyx":2358
     *                                      "items")
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:
     *                 construction_error(             # <<<<<<<<<<<<<<
     *                     tot_items, block.values.shape[1:], self.axes)
     *         if len(self.items) != tot_items:
     */
          __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_construction_error); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);

          /* "pandas/internals.pyx":2358
     *                                      "items")
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:
     *                 construction_error(             # <<<<<<<<<<<<<<
     *                     tot_items, block.values.shape[1:], self.axes)
     *         if len(self.items) != tot_items:
     */
          __pyx_t_10 = PyTuple_New(3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_INCREF(__pyx_v_tot_items);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_tot_items);
          __Pyx_GIVEREF(__pyx_v_tot_items);
          PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_10, 2, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_t_1 = 0;
          __pyx_t_5 = 0;
          __pyx_t_5 = PyObject_Call(__pyx_t_8, __pyx_t_10, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          goto __pyx_L6;
        }
        __pyx_L6:;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2359:                     tot_items, block.values.shape[1:], self.axes)

          /* "pandas/internals.pyx":2359
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:
     *                 construction_error(
     *                     tot_items, block.values.shape[1:], self.axes)             # <<<<<<<<<<<<<<
     *         if len(self.items) != tot_items:
     *             raise AssertionError('Number of manager items must equal union of '
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_t_5, 1, 0, NULL, NULL, &__pyx_slice__58, 1, 0, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);

      /* "pandas/internals.pyx":2359
     *             if not block.is_sparse and block.values.shape[1:] != mgr_shape[1:]:
     *                 construction_error(
     *                     tot_items, block.values.shape[1:], self.axes)             # <<<<<<<<<<<<<<
     *         if len(self.items) != tot_items:
     *             raise AssertionError('Number of manager items must equal union of '
     */
      __pyx_slice__58 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__58)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__58);
      __Pyx_GIVEREF(__pyx_slice__58);

     2360:         if len(self.items) != tot_items:

      /* "pandas/internals.pyx":2360
     *                 construction_error(
     *                     tot_items, block.values.shape[1:], self.axes)
     *         if len(self.items) != tot_items:             # <<<<<<<<<<<<<<
     *             raise AssertionError('Number of manager items must equal union of '
     *                                  'block items\n# manager items: {0}, # '
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = PyObject_RichCompare(__pyx_t_2, __pyx_v_tot_items, Py_NE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2360; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (__pyx_t_9) {

     2361:             raise AssertionError('Number of manager items must equal union of '

        /* "pandas/internals.pyx":2361
     *                     tot_items, block.values.shape[1:], self.axes)
     *         if len(self.items) != tot_items:
     *             raise AssertionError('Number of manager items must equal union of '             # <<<<<<<<<<<<<<
     *                                  'block items\n# manager items: {0}, # '
     *                                  'tot_items: {1}'.format(len(self.items),
     */
        __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2361; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2361; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_Raise(__pyx_t_2, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2361; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     2362:                                  'block items\n# manager items: {0}, # '

     2363:                                  'tot_items: {1}'.format(len(self.items),

        /* "pandas/internals.pyx":2363
     *             raise AssertionError('Number of manager items must equal union of '
     *                                  'block items\n# manager items: {0}, # '
     *                                  'tot_items: {1}'.format(len(self.items),             # <<<<<<<<<<<<<<
     *                                                          tot_items))
     *
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_Number_of_manager_items_must_equ, __pyx_n_s_format); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

        /* "pandas/internals.pyx":2364
     *                                  'block items\n# manager items: {0}, # '
     *                                  'tot_items: {1}'.format(len(self.items),
     *                                                          tot_items))             # <<<<<<<<<<<<<<
     *
     *     def apply(self, f, axes=None, filter=None, do_integrity_check=False, **kwargs):
     */
        __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_tot_items);
        PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_tot_items);
        __Pyx_GIVEREF(__pyx_v_tot_items);
        __pyx_t_2 = 0;

        /* "pandas/internals.pyx":2363
     *             raise AssertionError('Number of manager items must equal union of '
     *                                  'block items\n# manager items: {0}, # '
     *                                  'tot_items: {1}'.format(len(self.items),             # <<<<<<<<<<<<<<
     *                                                          tot_items))
     *
     */
        __pyx_t_2 = PyObject_Call(__pyx_t_5, __pyx_t_10, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2363; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     2364:                                                          tot_items))

     2365:

     2366:     def apply(self, f, axes=None, filter=None, do_integrity_check=False, **kwargs):

    /* "pandas/internals.pyx":2366
     *                                                          tot_items))
     *
     *     def apply(self, f, axes=None, filter=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         iterate over the blocks, collect and create a new block manager
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_49apply(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_48apply[] = "\n        iterate over the blocks, collect and create a new block manager\n\n        Parameters\n        ----------\n        f : the callable or function name to operate on at the block level\n        axes : optional (if not supplied, use self.axes)\n        filter : list, if supplied, only call the block if the filter is in\n                 the block\n        do_integrity_check : boolean, default False. Do the block manager integrity check\n\n        Returns\n        -------\n        Block Manager (new object)\n\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_49apply = {__Pyx_NAMESTR("apply"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_49apply, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_48apply)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_49apply(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_f = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_v_filter = 0;
      PyObject *__pyx_v_do_integrity_check = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("apply (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_f,&__pyx_n_s_axes,&__pyx_n_s_filter,&__pyx_n_s_do_integrity_check,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        values[4] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("apply", 0, 2, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_filter);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_do_integrity_check);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "apply") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_f = values[1];
        __pyx_v_axes = values[2];
        __pyx_v_filter = values[3];
        __pyx_v_do_integrity_check = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("apply", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_48apply(__pyx_self, __pyx_v_self, __pyx_v_f, __pyx_v_axes, __pyx_v_filter, __pyx_v_do_integrity_check, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_48apply(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_f, PyObject *__pyx_v_axes, PyObject *__pyx_v_filter, PyObject *__pyx_v_do_integrity_check, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_result_blocks = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_applied = NULL;
      PyObject *__pyx_v_bm = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("apply", 0);

      /* "pandas/internals.pyx":2366
     *                                                          tot_items))
     *
     *     def apply(self, f, axes=None, filter=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         iterate over the blocks, collect and create a new block manager
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.BlockManager.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result_blocks);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_applied);
      __Pyx_XDECREF(__pyx_v_bm);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2366
     *                                                          tot_items))
     *
     *     def apply(self, f, axes=None, filter=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         iterate over the blocks, collect and create a new block manager
     */
      __pyx_tuple__526 = PyTuple_Pack(11, __pyx_n_s_self, __pyx_n_s_f, __pyx_n_s_axes, __pyx_n_s_filter, __pyx_n_s_do_integrity_check, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_result_blocks, __pyx_n_s_blk, __pyx_n_s_applied, __pyx_n_s_bm); if (unlikely(!__pyx_tuple__526)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__526);
      __Pyx_GIVEREF(__pyx_tuple__526);
      __pyx_codeobj__527 = (PyObject*)__Pyx_PyCode_New(5, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__526, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_apply, 2366, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__527)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2366
     *                                                          tot_items))
     *
     *     def apply(self, f, axes=None, filter=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         iterate over the blocks, collect and create a new block manager
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_49apply, 0, __pyx_n_s_BlockManager_apply, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__527)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__528);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_apply, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__528 = PyTuple_Pack(3, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__528)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__528);
      __Pyx_GIVEREF(__pyx_tuple__528);

     2367:         """

     2368:         iterate over the blocks, collect and create a new block manager

     2369:

     2370:         Parameters

     2371:         ----------

     2372:         f : the callable or function name to operate on at the block level

     2373:         axes : optional (if not supplied, use self.axes)

     2374:         filter : list, if supplied, only call the block if the filter is in

     2375:                  the block

     2376:         do_integrity_check : boolean, default False. Do the block manager integrity check

     2377:

     2378:         Returns

     2379:         -------

     2380:         Block Manager (new object)

     2381:

     2382:         """

     2383:

     2384:         result_blocks = []

      /* "pandas/internals.pyx":2384
     *         """
     *
     *         result_blocks = []             # <<<<<<<<<<<<<<
     *         for blk in self.blocks:
     *             if filter is not None:
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2384; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_result_blocks = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     2385:         for blk in self.blocks:

      /* "pandas/internals.pyx":2385
     *
     *         result_blocks = []
     *         for blk in self.blocks:             # <<<<<<<<<<<<<<
     *             if filter is not None:
     *                 kwargs['filter'] = set(filter)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_1);
        __pyx_t_1 = 0;

     2386:             if filter is not None:

        /* "pandas/internals.pyx":2386
     *         result_blocks = []
     *         for blk in self.blocks:
     *             if filter is not None:             # <<<<<<<<<<<<<<
     *                 kwargs['filter'] = set(filter)
     *                 if not blk.items.isin(filter).any():
     */
        __pyx_t_5 = (__pyx_v_filter != Py_None);
        __pyx_t_6 = (__pyx_t_5 != 0);
        if (__pyx_t_6) {

     2387:                 kwargs['filter'] = set(filter)

          /* "pandas/internals.pyx":2387
     *         for blk in self.blocks:
     *             if filter is not None:
     *                 kwargs['filter'] = set(filter)             # <<<<<<<<<<<<<<
     *                 if not blk.items.isin(filter).any():
     *                     result_blocks.append(blk)
     */
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_filter);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_filter);
          __Pyx_GIVEREF(__pyx_v_filter);
          __pyx_t_7 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          if (unlikely(PyDict_SetItem(__pyx_v_kwargs, __pyx_n_s_filter, __pyx_t_7) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

     2388:                 if not blk.items.isin(filter).any():

          /* "pandas/internals.pyx":2388
     *             if filter is not None:
     *                 kwargs['filter'] = set(filter)
     *                 if not blk.items.isin(filter).any():             # <<<<<<<<<<<<<<
     *                     result_blocks.append(blk)
     *                     continue
     */
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_isin); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_INCREF(__pyx_v_filter);
          PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_filter);
          __Pyx_GIVEREF(__pyx_v_filter);
          __pyx_t_8 = PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_any); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_8 = PyObject_Call(__pyx_t_7, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_5 = ((!__pyx_t_6) != 0);
          if (__pyx_t_5) {

     2389:                     result_blocks.append(blk)

            /* "pandas/internals.pyx":2389
     *                 kwargs['filter'] = set(filter)
     *                 if not blk.items.isin(filter).any():
     *                     result_blocks.append(blk)             # <<<<<<<<<<<<<<
     *                     continue
     *             applied = getattr(blk, f)(**kwargs)
     */
            __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_result_blocks, __pyx_v_blk); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2389; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2390:                     continue

            /* "pandas/internals.pyx":2390
     *                 if not blk.items.isin(filter).any():
     *                     result_blocks.append(blk)
     *                     continue             # <<<<<<<<<<<<<<
     *             applied = getattr(blk, f)(**kwargs)
     *
     */
            goto __pyx_L3_continue;
          }
          goto __pyx_L5;
        }
        __pyx_L5:;

     2391:             applied = getattr(blk, f)(**kwargs)

        /* "pandas/internals.pyx":2391
     *                     result_blocks.append(blk)
     *                     continue
     *             applied = getattr(blk, f)(**kwargs)             # <<<<<<<<<<<<<<
     *
     *             if isinstance(applied, list):
     */
        __pyx_t_8 = __Pyx_GetAttr(__pyx_v_blk, __pyx_v_f); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2391; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_7 = __pyx_v_kwargs;
        __Pyx_INCREF(__pyx_t_7);
        __pyx_t_1 = PyObject_Call(__pyx_t_8, __pyx_empty_tuple, __pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2391; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF_SET(__pyx_v_applied, __pyx_t_1);
        __pyx_t_1 = 0;

     2392:

     2393:             if isinstance(applied, list):

        /* "pandas/internals.pyx":2393
     *             applied = getattr(blk, f)(**kwargs)
     *
     *             if isinstance(applied, list):             # <<<<<<<<<<<<<<
     *                 result_blocks.extend(applied)
     *             else:
     */
        __pyx_t_5 = PyList_Check(__pyx_v_applied);
        __pyx_t_6 = (__pyx_t_5 != 0);
        if (__pyx_t_6) {

     2394:                 result_blocks.extend(applied)

          /* "pandas/internals.pyx":2394
     *
     *             if isinstance(applied, list):
     *                 result_blocks.extend(applied)             # <<<<<<<<<<<<<<
     *             else:
     *                 result_blocks.append(applied)
     */
          __pyx_t_9 = __Pyx_PyList_Extend(__pyx_v_result_blocks, __pyx_v_applied); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          goto __pyx_L7;
        }
        /*else*/ {

     2395:             else:

     2396:                 result_blocks.append(applied)

          /* "pandas/internals.pyx":2396
     *                 result_blocks.extend(applied)
     *             else:
     *                 result_blocks.append(applied)             # <<<<<<<<<<<<<<
     *         if len(result_blocks) == 0:
     *             return self.make_empty(axes or self.axes)
     */
          __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_result_blocks, __pyx_v_applied); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2396; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __pyx_L7:;
        __pyx_L3_continue:;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2397:         if len(result_blocks) == 0:

      /* "pandas/internals.pyx":2397
     *             else:
     *                 result_blocks.append(applied)
     *         if len(result_blocks) == 0:             # <<<<<<<<<<<<<<
     *             return self.make_empty(axes or self.axes)
     *         bm = self.__class__(result_blocks, axes or self.axes,
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_result_blocks); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2397; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_6 = ((__pyx_t_3 == 0) != 0);
      if (__pyx_t_6) {

     2398:             return self.make_empty(axes or self.axes)

        /* "pandas/internals.pyx":2398
     *                 result_blocks.append(applied)
     *         if len(result_blocks) == 0:
     *             return self.make_empty(axes or self.axes)             # <<<<<<<<<<<<<<
     *         bm = self.__class__(result_blocks, axes or self.axes,
     *                             do_integrity_check=do_integrity_check)
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_empty); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_axes); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (!__pyx_t_6) {
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_7 = __pyx_t_1;
          __pyx_t_1 = 0;
        } else {
          __Pyx_INCREF(__pyx_v_axes);
          __pyx_t_7 = __pyx_v_axes;
        }
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_7);
        __Pyx_GIVEREF(__pyx_t_7);
        __pyx_t_7 = 0;
        __pyx_t_7 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_r = __pyx_t_7;
        __pyx_t_7 = 0;
        goto __pyx_L0;
      }

     2399:         bm = self.__class__(result_blocks, axes or self.axes,

      /* "pandas/internals.pyx":2399
     *         if len(result_blocks) == 0:
     *             return self.make_empty(axes or self.axes)
     *         bm = self.__class__(result_blocks, axes or self.axes,             # <<<<<<<<<<<<<<
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()
     */
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_v_axes); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_6) {
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __pyx_t_1;
        __pyx_t_1 = 0;
      } else {
        __Pyx_INCREF(__pyx_v_axes);
        __pyx_t_2 = __pyx_v_axes;
      }
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_result_blocks);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result_blocks);
      __Pyx_GIVEREF(__pyx_v_result_blocks);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);

      /* "pandas/internals.pyx":2399
     *         if len(result_blocks) == 0:
     *             return self.make_empty(axes or self.axes)
     *         bm = self.__class__(result_blocks, axes or self.axes,             # <<<<<<<<<<<<<<
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()
     */
      __pyx_t_8 = PyObject_Call(__pyx_t_7, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_bm = __pyx_t_8;
      __pyx_t_8 = 0;

     2400:                             do_integrity_check=do_integrity_check)

      /* "pandas/internals.pyx":2400
     *             return self.make_empty(axes or self.axes)
     *         bm = self.__class__(result_blocks, axes or self.axes,
     *                             do_integrity_check=do_integrity_check)             # <<<<<<<<<<<<<<
     *         bm._consolidate_inplace()
     *         return bm
     */
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_do_integrity_check, __pyx_v_do_integrity_check) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2401:         bm._consolidate_inplace()

      /* "pandas/internals.pyx":2401
     *         bm = self.__class__(result_blocks, axes or self.axes,
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return bm
     *
     */
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_bm, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2401; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_2 = PyObject_Call(__pyx_t_8, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2401; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2402:         return bm

      /* "pandas/internals.pyx":2402
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()
     *         return bm             # <<<<<<<<<<<<<<
     *
     *     def isnull(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_bm);
      __pyx_r = __pyx_v_bm;
      goto __pyx_L0;

     2403:

     2404:     def isnull(self, **kwargs):

    /* "pandas/internals.pyx":2404
     *         return bm
     *
     *     def isnull(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('apply', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_51isnull(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_51isnull = {__Pyx_NAMESTR("isnull"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_51isnull, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_51isnull(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("isnull (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "isnull") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2404; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("isnull", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2404; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.isnull", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_50isnull(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_50isnull(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("isnull", 0);

      /* "pandas/internals.pyx":2404
     *         return bm
     *
     *     def isnull(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('apply', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.isnull", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2404
     *         return bm
     *
     *     def isnull(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('apply', **kwargs)
     *
     */
      __pyx_tuple__529 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__529)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2404; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__529);
      __Pyx_GIVEREF(__pyx_tuple__529);

      /* "pandas/internals.pyx":2404
     *         return bm
     *
     *     def isnull(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('apply', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_51isnull, 0, __pyx_n_s_BlockManager_isnull, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__530)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2404; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_isnull, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2404; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__530 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__529, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_isnull, 2404, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__530)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2404; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2405:         return self.apply('apply', **kwargs)

      /* "pandas/internals.pyx":2405
     *
     *     def isnull(self, **kwargs):
     *         return self.apply('apply', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def where(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__59, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2405
     *
     *     def isnull(self, **kwargs):
     *         return self.apply('apply', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def where(self, **kwargs):
     */
      __pyx_tuple__59 = PyTuple_Pack(1, __pyx_n_s_apply); if (unlikely(!__pyx_tuple__59)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__59);
      __Pyx_GIVEREF(__pyx_tuple__59);

     2406:

     2407:     def where(self, **kwargs):

    /* "pandas/internals.pyx":2407
     *         return self.apply('apply', **kwargs)
     *
     *     def where(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('where', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_53where(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_53where = {__Pyx_NAMESTR("where"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_53where, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_53where(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("where (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "where") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2407; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("where", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2407; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.where", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_52where(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_52where(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("where", 0);

      /* "pandas/internals.pyx":2407
     *         return self.apply('apply', **kwargs)
     *
     *     def where(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('where', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.where", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2407
     *         return self.apply('apply', **kwargs)
     *
     *     def where(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('where', **kwargs)
     *
     */
      __pyx_tuple__531 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__531)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2407; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__531);
      __Pyx_GIVEREF(__pyx_tuple__531);

      /* "pandas/internals.pyx":2407
     *         return self.apply('apply', **kwargs)
     *
     *     def where(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('where', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_53where, 0, __pyx_n_s_BlockManager_where, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__532)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2407; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_where, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2407; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__532 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__531, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_where, 2407, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__532)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2407; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2408:         return self.apply('where', **kwargs)

      /* "pandas/internals.pyx":2408
     *
     *     def where(self, **kwargs):
     *         return self.apply('where', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def eval(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__60, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2408
     *
     *     def where(self, **kwargs):
     *         return self.apply('where', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def eval(self, **kwargs):
     */
      __pyx_tuple__60 = PyTuple_Pack(1, __pyx_n_s_where); if (unlikely(!__pyx_tuple__60)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__60);
      __Pyx_GIVEREF(__pyx_tuple__60);

     2409:

     2410:     def eval(self, **kwargs):

    /* "pandas/internals.pyx":2410
     *         return self.apply('where', **kwargs)
     *
     *     def eval(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('eval', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_55eval(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_55eval = {__Pyx_NAMESTR("eval"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_55eval, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_55eval(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("eval (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "eval") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2410; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("eval", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2410; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.eval", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_54eval(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_54eval(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("eval", 0);

      /* "pandas/internals.pyx":2410
     *         return self.apply('where', **kwargs)
     *
     *     def eval(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('eval', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.eval", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2410
     *         return self.apply('where', **kwargs)
     *
     *     def eval(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('eval', **kwargs)
     *
     */
      __pyx_tuple__533 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__533)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__533);
      __Pyx_GIVEREF(__pyx_tuple__533);

      /* "pandas/internals.pyx":2410
     *         return self.apply('where', **kwargs)
     *
     *     def eval(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('eval', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_55eval, 0, __pyx_n_s_BlockManager_eval, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__534)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_eval, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__534 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__533, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_eval, 2410, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__534)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2411:         return self.apply('eval', **kwargs)

      /* "pandas/internals.pyx":2411
     *
     *     def eval(self, **kwargs):
     *         return self.apply('eval', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def setitem(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__61, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2411
     *
     *     def eval(self, **kwargs):
     *         return self.apply('eval', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def setitem(self, **kwargs):
     */
      __pyx_tuple__61 = PyTuple_Pack(1, __pyx_n_s_eval); if (unlikely(!__pyx_tuple__61)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__61);
      __Pyx_GIVEREF(__pyx_tuple__61);

     2412:

     2413:     def setitem(self, **kwargs):

    /* "pandas/internals.pyx":2413
     *         return self.apply('eval', **kwargs)
     *
     *     def setitem(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('setitem', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_57setitem(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_57setitem = {__Pyx_NAMESTR("setitem"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_57setitem, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_57setitem(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("setitem (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "setitem") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2413; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("setitem", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2413; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.setitem", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_56setitem(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_56setitem(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("setitem", 0);

      /* "pandas/internals.pyx":2413
     *         return self.apply('eval', **kwargs)
     *
     *     def setitem(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('setitem', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.setitem", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2413
     *         return self.apply('eval', **kwargs)
     *
     *     def setitem(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('setitem', **kwargs)
     *
     */
      __pyx_tuple__535 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__535)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__535);
      __Pyx_GIVEREF(__pyx_tuple__535);

      /* "pandas/internals.pyx":2413
     *         return self.apply('eval', **kwargs)
     *
     *     def setitem(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('setitem', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_57setitem, 0, __pyx_n_s_BlockManager_setitem, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__536)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_setitem, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__536 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__535, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_setitem, 2413, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__536)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2414:         return self.apply('setitem', **kwargs)

      /* "pandas/internals.pyx":2414
     *
     *     def setitem(self, **kwargs):
     *         return self.apply('setitem', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def putmask(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__62, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2414
     *
     *     def setitem(self, **kwargs):
     *         return self.apply('setitem', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def putmask(self, **kwargs):
     */
      __pyx_tuple__62 = PyTuple_Pack(1, __pyx_n_s_setitem); if (unlikely(!__pyx_tuple__62)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__62);
      __Pyx_GIVEREF(__pyx_tuple__62);

     2415:

     2416:     def putmask(self, **kwargs):

    /* "pandas/internals.pyx":2416
     *         return self.apply('setitem', **kwargs)
     *
     *     def putmask(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('putmask', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_59putmask(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_59putmask = {__Pyx_NAMESTR("putmask"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_59putmask, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_59putmask(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("putmask (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "putmask") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2416; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("putmask", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2416; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.putmask", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_58putmask(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_58putmask(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("putmask", 0);

      /* "pandas/internals.pyx":2416
     *         return self.apply('setitem', **kwargs)
     *
     *     def putmask(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('putmask', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.putmask", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2416
     *         return self.apply('setitem', **kwargs)
     *
     *     def putmask(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('putmask', **kwargs)
     *
     */
      __pyx_tuple__537 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__537)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__537);
      __Pyx_GIVEREF(__pyx_tuple__537);

      /* "pandas/internals.pyx":2416
     *         return self.apply('setitem', **kwargs)
     *
     *     def putmask(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('putmask', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_59putmask, 0, __pyx_n_s_BlockManager_putmask, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__538)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_putmask, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__538 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__537, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_putmask, 2416, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__538)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2417:         return self.apply('putmask', **kwargs)

      /* "pandas/internals.pyx":2417
     *
     *     def putmask(self, **kwargs):
     *         return self.apply('putmask', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def diff(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__63, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2417
     *
     *     def putmask(self, **kwargs):
     *         return self.apply('putmask', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def diff(self, **kwargs):
     */
      __pyx_tuple__63 = PyTuple_Pack(1, __pyx_n_s_putmask); if (unlikely(!__pyx_tuple__63)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__63);
      __Pyx_GIVEREF(__pyx_tuple__63);

     2418:

     2419:     def diff(self, **kwargs):

    /* "pandas/internals.pyx":2419
     *         return self.apply('putmask', **kwargs)
     *
     *     def diff(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('diff', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_61diff(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_61diff = {__Pyx_NAMESTR("diff"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_61diff, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_61diff(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("diff (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "diff") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2419; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("diff", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2419; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.diff", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_60diff(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_60diff(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("diff", 0);

      /* "pandas/internals.pyx":2419
     *         return self.apply('putmask', **kwargs)
     *
     *     def diff(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('diff', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.diff", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2419
     *         return self.apply('putmask', **kwargs)
     *
     *     def diff(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('diff', **kwargs)
     *
     */
      __pyx_tuple__539 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__539)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__539);
      __Pyx_GIVEREF(__pyx_tuple__539);

      /* "pandas/internals.pyx":2419
     *         return self.apply('putmask', **kwargs)
     *
     *     def diff(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('diff', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_61diff, 0, __pyx_n_s_BlockManager_diff, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__540)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_diff, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__540 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__539, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_diff, 2419, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__540)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2420:         return self.apply('diff', **kwargs)

      /* "pandas/internals.pyx":2420
     *
     *     def diff(self, **kwargs):
     *         return self.apply('diff', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def interpolate(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__64, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2420
     *
     *     def diff(self, **kwargs):
     *         return self.apply('diff', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def interpolate(self, **kwargs):
     */
      __pyx_tuple__64 = PyTuple_Pack(1, __pyx_n_s_diff); if (unlikely(!__pyx_tuple__64)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__64);
      __Pyx_GIVEREF(__pyx_tuple__64);

     2421:

     2422:     def interpolate(self, **kwargs):

    /* "pandas/internals.pyx":2422
     *         return self.apply('diff', **kwargs)
     *
     *     def interpolate(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('interpolate', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_63interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_63interpolate = {__Pyx_NAMESTR("interpolate"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_63interpolate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_63interpolate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("interpolate (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "interpolate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2422; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("interpolate", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2422; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_62interpolate(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_62interpolate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("interpolate", 0);

      /* "pandas/internals.pyx":2422
     *         return self.apply('diff', **kwargs)
     *
     *     def interpolate(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('interpolate', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.interpolate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2422
     *         return self.apply('diff', **kwargs)
     *
     *     def interpolate(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('interpolate', **kwargs)
     *
     */
      __pyx_tuple__541 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__541)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__541);
      __Pyx_GIVEREF(__pyx_tuple__541);

      /* "pandas/internals.pyx":2422
     *         return self.apply('diff', **kwargs)
     *
     *     def interpolate(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('interpolate', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_63interpolate, 0, __pyx_n_s_BlockManager_interpolate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__542)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_interpolate_2, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__542 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__541, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_interpolate_2, 2422, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__542)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2423:         return self.apply('interpolate', **kwargs)

      /* "pandas/internals.pyx":2423
     *
     *     def interpolate(self, **kwargs):
     *         return self.apply('interpolate', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def shift(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__65, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2423
     *
     *     def interpolate(self, **kwargs):
     *         return self.apply('interpolate', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def shift(self, **kwargs):
     */
      __pyx_tuple__65 = PyTuple_Pack(1, __pyx_n_s_interpolate_2); if (unlikely(!__pyx_tuple__65)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__65);
      __Pyx_GIVEREF(__pyx_tuple__65);

     2424:

     2425:     def shift(self, **kwargs):

    /* "pandas/internals.pyx":2425
     *         return self.apply('interpolate', **kwargs)
     *
     *     def shift(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('shift', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_65shift(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_65shift = {__Pyx_NAMESTR("shift"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_65shift, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_65shift(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shift (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "shift") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2425; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("shift", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2425; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.shift", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_64shift(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_64shift(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shift", 0);

      /* "pandas/internals.pyx":2425
     *         return self.apply('interpolate', **kwargs)
     *
     *     def shift(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('shift', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.shift", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2425
     *         return self.apply('interpolate', **kwargs)
     *
     *     def shift(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('shift', **kwargs)
     *
     */
      __pyx_tuple__543 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__543)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__543);
      __Pyx_GIVEREF(__pyx_tuple__543);

      /* "pandas/internals.pyx":2425
     *         return self.apply('interpolate', **kwargs)
     *
     *     def shift(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('shift', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_65shift, 0, __pyx_n_s_BlockManager_shift, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__544)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_shift, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__544 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__543, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shift, 2425, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__544)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2426:         return self.apply('shift', **kwargs)

      /* "pandas/internals.pyx":2426
     *
     *     def shift(self, **kwargs):
     *         return self.apply('shift', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def fillna(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2426; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__66, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2426; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2426
     *
     *     def shift(self, **kwargs):
     *         return self.apply('shift', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def fillna(self, **kwargs):
     */
      __pyx_tuple__66 = PyTuple_Pack(1, __pyx_n_s_shift); if (unlikely(!__pyx_tuple__66)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2426; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__66);
      __Pyx_GIVEREF(__pyx_tuple__66);

     2427:

     2428:     def fillna(self, **kwargs):

    /* "pandas/internals.pyx":2428
     *         return self.apply('shift', **kwargs)
     *
     *     def fillna(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('fillna', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_67fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_67fillna = {__Pyx_NAMESTR("fillna"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_67fillna, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_67fillna(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "fillna") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2428; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("fillna", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2428; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_66fillna(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_66fillna(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fillna", 0);

      /* "pandas/internals.pyx":2428
     *         return self.apply('shift', **kwargs)
     *
     *     def fillna(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('fillna', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.fillna", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2428
     *         return self.apply('shift', **kwargs)
     *
     *     def fillna(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('fillna', **kwargs)
     *
     */
      __pyx_tuple__545 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__545)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__545);
      __Pyx_GIVEREF(__pyx_tuple__545);

      /* "pandas/internals.pyx":2428
     *         return self.apply('shift', **kwargs)
     *
     *     def fillna(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('fillna', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_67fillna, 0, __pyx_n_s_BlockManager_fillna, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__546)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fillna, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__546 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__545, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fillna, 2428, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__546)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2429:         return self.apply('fillna', **kwargs)

      /* "pandas/internals.pyx":2429
     *
     *     def fillna(self, **kwargs):
     *         return self.apply('fillna', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def downcast(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__67, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2429
     *
     *     def fillna(self, **kwargs):
     *         return self.apply('fillna', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def downcast(self, **kwargs):
     */
      __pyx_tuple__67 = PyTuple_Pack(1, __pyx_n_s_fillna); if (unlikely(!__pyx_tuple__67)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__67);
      __Pyx_GIVEREF(__pyx_tuple__67);

     2430:

     2431:     def downcast(self, **kwargs):

    /* "pandas/internals.pyx":2431
     *         return self.apply('fillna', **kwargs)
     *
     *     def downcast(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('downcast', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_69downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_69downcast = {__Pyx_NAMESTR("downcast"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_69downcast, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_69downcast(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("downcast (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "downcast") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2431; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("downcast", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2431; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_68downcast(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_68downcast(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("downcast", 0);

      /* "pandas/internals.pyx":2431
     *         return self.apply('fillna', **kwargs)
     *
     *     def downcast(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('downcast', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.downcast", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2431
     *         return self.apply('fillna', **kwargs)
     *
     *     def downcast(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('downcast', **kwargs)
     *
     */
      __pyx_tuple__547 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__547)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2431; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__547);
      __Pyx_GIVEREF(__pyx_tuple__547);

      /* "pandas/internals.pyx":2431
     *         return self.apply('fillna', **kwargs)
     *
     *     def downcast(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('downcast', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_69downcast, 0, __pyx_n_s_BlockManager_downcast, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__548)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2431; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_downcast, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2431; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__548 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__547, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_downcast, 2431, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__548)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2431; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2432:         return self.apply('downcast', **kwargs)

      /* "pandas/internals.pyx":2432
     *
     *     def downcast(self, **kwargs):
     *         return self.apply('downcast', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def astype(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__68, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2432
     *
     *     def downcast(self, **kwargs):
     *         return self.apply('downcast', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def astype(self, **kwargs):
     */
      __pyx_tuple__68 = PyTuple_Pack(1, __pyx_n_s_downcast); if (unlikely(!__pyx_tuple__68)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__68);
      __Pyx_GIVEREF(__pyx_tuple__68);

     2433:

     2434:     def astype(self, **kwargs):

    /* "pandas/internals.pyx":2434
     *         return self.apply('downcast', **kwargs)
     *
     *     def astype(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('astype', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_71astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_71astype = {__Pyx_NAMESTR("astype"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_71astype, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_71astype(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("astype (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "astype") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2434; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("astype", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2434; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_70astype(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_70astype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("astype", 0);

      /* "pandas/internals.pyx":2434
     *         return self.apply('downcast', **kwargs)
     *
     *     def astype(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('astype', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.astype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2434
     *         return self.apply('downcast', **kwargs)
     *
     *     def astype(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('astype', **kwargs)
     *
     */
      __pyx_tuple__549 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__549)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__549);
      __Pyx_GIVEREF(__pyx_tuple__549);

      /* "pandas/internals.pyx":2434
     *         return self.apply('downcast', **kwargs)
     *
     *     def astype(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('astype', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_71astype, 0, __pyx_n_s_BlockManager_astype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__550)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_astype, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__550 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__549, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_astype, 2434, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__550)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2435:         return self.apply('astype', **kwargs)

      /* "pandas/internals.pyx":2435
     *
     *     def astype(self, **kwargs):
     *         return self.apply('astype', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def convert(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2435; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__69, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2435; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2435
     *
     *     def astype(self, **kwargs):
     *         return self.apply('astype', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def convert(self, **kwargs):
     */
      __pyx_tuple__69 = PyTuple_Pack(1, __pyx_n_s_astype); if (unlikely(!__pyx_tuple__69)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2435; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__69);
      __Pyx_GIVEREF(__pyx_tuple__69);

     2436:

     2437:     def convert(self, **kwargs):

    /* "pandas/internals.pyx":2437
     *         return self.apply('astype', **kwargs)
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('convert', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_73convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_73convert = {__Pyx_NAMESTR("convert"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_73convert, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_73convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "convert") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2437; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("convert", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2437; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_72convert(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_72convert(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert", 0);

      /* "pandas/internals.pyx":2437
     *         return self.apply('astype', **kwargs)
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('convert', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2437
     *         return self.apply('astype', **kwargs)
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('convert', **kwargs)
     *
     */
      __pyx_tuple__551 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__551)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__551);
      __Pyx_GIVEREF(__pyx_tuple__551);

      /* "pandas/internals.pyx":2437
     *         return self.apply('astype', **kwargs)
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('convert', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_73convert, 0, __pyx_n_s_BlockManager_convert, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__552)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_convert, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__552 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__551, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_convert, 2437, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__552)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2438:         return self.apply('convert', **kwargs)

      /* "pandas/internals.pyx":2438
     *
     *     def convert(self, **kwargs):
     *         return self.apply('convert', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def replace(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2438; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__70, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2438; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2438
     *
     *     def convert(self, **kwargs):
     *         return self.apply('convert', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def replace(self, **kwargs):
     */
      __pyx_tuple__70 = PyTuple_Pack(1, __pyx_n_s_convert); if (unlikely(!__pyx_tuple__70)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2438; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__70);
      __Pyx_GIVEREF(__pyx_tuple__70);

     2439:

     2440:     def replace(self, **kwargs):

    /* "pandas/internals.pyx":2440
     *         return self.apply('convert', **kwargs)
     *
     *     def replace(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('replace', **kwargs)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_75replace(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_75replace = {__Pyx_NAMESTR("replace"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_75replace, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_75replace(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "replace") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2440; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("replace", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2440; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.replace", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_74replace(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_74replace(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace", 0);

      /* "pandas/internals.pyx":2440
     *         return self.apply('convert', **kwargs)
     *
     *     def replace(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('replace', **kwargs)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.replace", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2440
     *         return self.apply('convert', **kwargs)
     *
     *     def replace(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('replace', **kwargs)
     *
     */
      __pyx_tuple__553 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__553)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__553);
      __Pyx_GIVEREF(__pyx_tuple__553);

      /* "pandas/internals.pyx":2440
     *         return self.apply('convert', **kwargs)
     *
     *     def replace(self, **kwargs):             # <<<<<<<<<<<<<<
     *         return self.apply('replace', **kwargs)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_75replace, 0, __pyx_n_s_BlockManager_replace, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__554)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_replace, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__554 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__553, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_replace, 2440, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__554)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2440; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2441:         return self.apply('replace', **kwargs)

      /* "pandas/internals.pyx":2441
     *
     *     def replace(self, **kwargs):
     *         return self.apply('replace', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def replace_list(self, src_list, dest_list, inplace=False, regex=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2441; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__71, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2441; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2441
     *
     *     def replace(self, **kwargs):
     *         return self.apply('replace', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     def replace_list(self, src_list, dest_list, inplace=False, regex=False):
     */
      __pyx_tuple__71 = PyTuple_Pack(1, __pyx_n_s_replace); if (unlikely(!__pyx_tuple__71)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2441; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__71);
      __Pyx_GIVEREF(__pyx_tuple__71);

     2442:

     2443:     def replace_list(self, src_list, dest_list, inplace=False, regex=False):

    /* "pandas/internals.pyx":2443
     *         return self.apply('replace', **kwargs)
     *
     *     def replace_list(self, src_list, dest_list, inplace=False, regex=False):             # <<<<<<<<<<<<<<
     *         """ do a list replace """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_77replace_list(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_76replace_list[] = " do a list replace ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_77replace_list = {__Pyx_NAMESTR("replace_list"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_77replace_list, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_76replace_list)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_77replace_list(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_src_list = 0;
      PyObject *__pyx_v_dest_list = 0;
      PyObject *__pyx_v_inplace = 0;
      PyObject *__pyx_v_regex = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace_list (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_src_list,&__pyx_n_s_dest_list,&__pyx_n_s_inplace,&__pyx_n_s_regex,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        values[4] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_src_list)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("replace_list", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dest_list)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("replace_list", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_inplace);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_regex);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "replace_list") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_src_list = values[1];
        __pyx_v_dest_list = values[2];
        __pyx_v_inplace = values[3];
        __pyx_v_regex = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("replace_list", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.replace_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_76replace_list(__pyx_self, __pyx_v_self, __pyx_v_src_list, __pyx_v_dest_list, __pyx_v_inplace, __pyx_v_regex);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":2443
     *         return self.apply('replace', **kwargs)
     *
     *     def replace_list(self, src_list, dest_list, inplace=False, regex=False):             # <<<<<<<<<<<<<<
     *         """ do a list replace """
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_76replace_list(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_src_list, PyObject *__pyx_v_dest_list, PyObject *__pyx_v_inplace, PyObject *__pyx_v_regex) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_11_replace_list *__pyx_cur_scope;
      PyObject *__pyx_v_comp = 0;
      PyObject *__pyx_v_masks = NULL;
      PyObject *__pyx_v_result_blocks = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_rb = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_s = NULL;
      PyObject *__pyx_v_d = NULL;
      PyObject *__pyx_v_new_rb = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_v_bm = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("replace_list", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_11_replace_list *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_11_replace_list(__pyx_ptype_6pandas_9internals___pyx_scope_struct_11_replace_list, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);

      /* "pandas/internals.pyx":2443
     *         return self.apply('replace', **kwargs)
     *
     *     def replace_list(self, src_list, dest_list, inplace=False, regex=False):             # <<<<<<<<<<<<<<
     *         """ do a list replace """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15);
      __Pyx_AddTraceback("pandas.internals.BlockManager.replace_list", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_comp);
      __Pyx_XDECREF(__pyx_v_masks);
      __Pyx_XDECREF(__pyx_v_result_blocks);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_rb);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_s);
      __Pyx_XDECREF(__pyx_v_d);
      __Pyx_XDECREF(__pyx_v_new_rb);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XDECREF(__pyx_v_bm);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2443
     *         return self.apply('replace', **kwargs)
     *
     *     def replace_list(self, src_list, dest_list, inplace=False, regex=False):             # <<<<<<<<<<<<<<
     *         """ do a list replace """
     *
     */
      __pyx_tuple__555 = PyTuple_Pack(20, __pyx_n_s_self, __pyx_n_s_src_list, __pyx_n_s_dest_list, __pyx_n_s_inplace, __pyx_n_s_regex, __pyx_n_s_values, __pyx_n_s_comp, __pyx_n_s_comp, __pyx_n_s_masks, __pyx_n_s_result_blocks, __pyx_n_s_blk, __pyx_n_s_rb, __pyx_n_s_i, __pyx_n_s_s, __pyx_n_s_d, __pyx_n_s_new_rb, __pyx_n_s_b, __pyx_n_s_result, __pyx_n_s_m, __pyx_n_s_bm); if (unlikely(!__pyx_tuple__555)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__555);
      __Pyx_GIVEREF(__pyx_tuple__555);
      __pyx_codeobj__556 = (PyObject*)__Pyx_PyCode_New(5, 0, 20, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__555, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_replace_list, 2443, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__556)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2443
     *         return self.apply('replace', **kwargs)
     *
     *     def replace_list(self, src_list, dest_list, inplace=False, regex=False):             # <<<<<<<<<<<<<<
     *         """ do a list replace """
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_77replace_list, 0, __pyx_n_s_BlockManager_replace_list, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__556)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__557);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_replace_list, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__557 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__557)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2443; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__557);
      __Pyx_GIVEREF(__pyx_tuple__557);

     2444:         """ do a list replace """

     2445:

     2446:         # figure out our mask a-priori to avoid repeated replacements

     2447:         values = self.as_matrix()

      /* "pandas/internals.pyx":2447
     *
     *         # figure out our mask a-priori to avoid repeated replacements
     *         values = self.as_matrix()             # <<<<<<<<<<<<<<
     *
     *         def comp(s):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_as_matrix); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2447; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2447; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_cur_scope->__pyx_v_values = __pyx_t_2;
      __pyx_t_2 = 0;

     2448:

     2449:         def comp(s):

    /* "pandas/internals.pyx":2449
     *         values = self.as_matrix()
     *
     *         def comp(s):             # <<<<<<<<<<<<<<
     *             if isnull(s):
     *                 return isnull(values)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_12replace_list_1comp(PyObject *__pyx_self, PyObject *__pyx_v_s); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_12replace_list_1comp = {__Pyx_NAMESTR("comp"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_12replace_list_1comp, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_12replace_list_1comp(PyObject *__pyx_self, PyObject *__pyx_v_s) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("comp (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_12replace_list_comp(__pyx_self, ((PyObject *)__pyx_v_s));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_12replace_list_comp(PyObject *__pyx_self, PyObject *__pyx_v_s) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_11_replace_list *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_11_replace_list *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("comp", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_11_replace_list *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":2449
     *         values = self.as_matrix()
     *
     *         def comp(s):             # <<<<<<<<<<<<<<
     *             if isnull(s):
     *                 return isnull(values)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.replace_list.comp", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2449
     *         values = self.as_matrix()
     *
     *         def comp(s):             # <<<<<<<<<<<<<<
     *             if isnull(s):
     *                 return isnull(values)
     */
      __pyx_tuple__72 = PyTuple_Pack(1, __pyx_n_s_s); if (unlikely(!__pyx_tuple__72)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2449; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__72);
      __Pyx_GIVEREF(__pyx_tuple__72);

      /* "pandas/internals.pyx":2449
     *         values = self.as_matrix()
     *
     *         def comp(s):             # <<<<<<<<<<<<<<
     *             if isnull(s):
     *                 return isnull(values)
     */
      __pyx_t_2 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_12replace_list_1comp, 0, __pyx_n_s_BlockManager_replace_list_locals, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__73)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2449; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_comp = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_codeobj__73 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__72, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_comp, 2449, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__73)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2449; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2450:             if isnull(s):

      /* "pandas/internals.pyx":2450
     *
     *         def comp(s):
     *             if isnull(s):             # <<<<<<<<<<<<<<
     *                 return isnull(values)
     *             return values == getattr(s, 'asm8', s)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2450; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2450; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_s);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_s);
      __Pyx_GIVEREF(__pyx_v_s);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2450; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2450; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     2451:                 return isnull(values)

        /* "pandas/internals.pyx":2451
     *         def comp(s):
     *             if isnull(s):
     *                 return isnull(values)             # <<<<<<<<<<<<<<
     *             return values == getattr(s, 'asm8', s)
     *         masks = [comp(s) for i, s in enumerate(src_list)]
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (unlikely(!__pyx_cur_scope->__pyx_v_values)) { __Pyx_RaiseClosureNameError("values"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2451; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_v_values);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_values);
        __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        goto __pyx_L0;
      }

     2452:             return values == getattr(s, 'asm8', s)

      /* "pandas/internals.pyx":2452
     *             if isnull(s):
     *                 return isnull(values)
     *             return values == getattr(s, 'asm8', s)             # <<<<<<<<<<<<<<
     *         masks = [comp(s) for i, s in enumerate(src_list)]
     *
     */
      __Pyx_XDECREF(__pyx_r);
      if (unlikely(!__pyx_cur_scope->__pyx_v_values)) { __Pyx_RaiseClosureNameError("values"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2452; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_GetAttr3(__pyx_v_s, __pyx_n_s_asm8, __pyx_v_s); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2452; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_RichCompare(__pyx_cur_scope->__pyx_v_values, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2452; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2453:         masks = [comp(s) for i, s in enumerate(src_list)]

      /* "pandas/internals.pyx":2453
     *                 return isnull(values)
     *             return values == getattr(s, 'asm8', s)
     *         masks = [comp(s) for i, s in enumerate(src_list)]             # <<<<<<<<<<<<<<
     *
     *         result_blocks = []
     */
      __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_1 = __pyx_int_0;
      if (PyList_CheckExact(__pyx_v_src_list) || PyTuple_CheckExact(__pyx_v_src_list)) {
        __pyx_t_3 = __pyx_v_src_list; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_src_list); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_6); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_6 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_6)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_6);
        }
        __Pyx_XDECREF_SET(__pyx_v_s, __pyx_t_6);
        __pyx_t_6 = 0;
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
        __pyx_t_6 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1);
        __pyx_t_1 = __pyx_t_6;
        __pyx_t_6 = 0;
        __pyx_t_6 = __pyx_pf_6pandas_9internals_12BlockManager_12replace_list_comp(__pyx_v_comp, __pyx_v_s); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_6))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2453; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_masks = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     2454:

     2455:         result_blocks = []

      /* "pandas/internals.pyx":2455
     *         masks = [comp(s) for i, s in enumerate(src_list)]
     *
     *         result_blocks = []             # <<<<<<<<<<<<<<
     *         for blk in self.blocks:
     *
     */
      __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2455; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_result_blocks = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     2456:         for blk in self.blocks:

      /* "pandas/internals.pyx":2456
     *
     *         result_blocks = []
     *         for blk in self.blocks:             # <<<<<<<<<<<<<<
     *
     *             # its possible to get multiple result blocks here
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2456; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2456; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2456; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2456; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2456; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2456; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_5(__pyx_t_1);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2456; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_2);
        __pyx_t_2 = 0;

     2457:

     2458:             # its possible to get multiple result blocks here

     2459:             # replace ALWAYS will return a list

     2460:             rb = [blk if inplace else blk.copy()]

        /* "pandas/internals.pyx":2460
     *             # its possible to get multiple result blocks here
     *             # replace ALWAYS will return a list
     *             rb = [blk if inplace else blk.copy()]             # <<<<<<<<<<<<<<
     *             for i, (s, d) in enumerate(zip(src_list, dest_list)):
     *                 new_rb = []
     */
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_v_inplace); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_7) {
          __Pyx_INCREF(__pyx_v_blk);
          __pyx_t_2 = __pyx_v_blk;
        } else {
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_copy); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_2 = __pyx_t_6;
          __pyx_t_6 = 0;
        }
        __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __Pyx_XDECREF_SET(__pyx_v_rb, ((PyObject*)__pyx_t_6));
        __pyx_t_6 = 0;

     2461:             for i, (s, d) in enumerate(zip(src_list, dest_list)):

        /* "pandas/internals.pyx":2461
     *             # replace ALWAYS will return a list
     *             rb = [blk if inplace else blk.copy()]
     *             for i, (s, d) in enumerate(zip(src_list, dest_list)):             # <<<<<<<<<<<<<<
     *                 new_rb = []
     *                 for b in rb:
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_6 = __pyx_int_0;
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_src_list);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_src_list);
        __Pyx_GIVEREF(__pyx_v_src_list);
        __Pyx_INCREF(__pyx_v_dest_list);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_dest_list);
        __Pyx_GIVEREF(__pyx_v_dest_list);
        __pyx_t_8 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (PyList_CheckExact(__pyx_t_8) || PyTuple_CheckExact(__pyx_t_8)) {
          __pyx_t_3 = __pyx_t_8; __Pyx_INCREF(__pyx_t_3); __pyx_t_9 = 0;
          __pyx_t_10 = NULL;
        } else {
          __pyx_t_9 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_10 = Py_TYPE(__pyx_t_3)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        for (;;) {
          if (!__pyx_t_10 && PyList_CheckExact(__pyx_t_3)) {
            if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_9); __Pyx_INCREF(__pyx_t_8); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_3, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_10 && PyTuple_CheckExact(__pyx_t_3)) {
            if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_9); __Pyx_INCREF(__pyx_t_8); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_3, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_8 = __pyx_t_10(__pyx_t_3);
            if (unlikely(!__pyx_t_8)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_8);
          }
          if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) {
            PyObject* sequence = __pyx_t_8;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_11 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_11 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_2);
            __Pyx_INCREF(__pyx_t_11);
            #else
            __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_11 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            #endif
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_12 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __pyx_t_13 = Py_TYPE(__pyx_t_12)->tp_iternext;
            index = 0; __pyx_t_2 = __pyx_t_13(__pyx_t_12); if (unlikely(!__pyx_t_2)) goto __pyx_L9_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_2);
            index = 1; __pyx_t_11 = __pyx_t_13(__pyx_t_12); if (unlikely(!__pyx_t_11)) goto __pyx_L9_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_11);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_13(__pyx_t_12), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_13 = NULL;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            goto __pyx_L10_unpacking_done;
            __pyx_L9_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __pyx_t_13 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L10_unpacking_done:;
          }
          __Pyx_XDECREF_SET(__pyx_v_s, __pyx_t_2);
          __pyx_t_2 = 0;
          __Pyx_XDECREF_SET(__pyx_v_d, __pyx_t_11);
          __pyx_t_11 = 0;
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_6);
          __pyx_t_8 = PyNumber_Add(__pyx_t_6, __pyx_int_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_6);
          __pyx_t_6 = __pyx_t_8;
          __pyx_t_8 = 0;

     2462:                 new_rb = []

          /* "pandas/internals.pyx":2462
     *             rb = [blk if inplace else blk.copy()]
     *             for i, (s, d) in enumerate(zip(src_list, dest_list)):
     *                 new_rb = []             # <<<<<<<<<<<<<<
     *                 for b in rb:
     *                     if b.dtype == np.object_:
     */
          __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2462; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_XDECREF_SET(__pyx_v_new_rb, ((PyObject*)__pyx_t_8));
          __pyx_t_8 = 0;

     2463:                 for b in rb:

          /* "pandas/internals.pyx":2463
     *             for i, (s, d) in enumerate(zip(src_list, dest_list)):
     *                 new_rb = []
     *                 for b in rb:             # <<<<<<<<<<<<<<
     *                     if b.dtype == np.object_:
     *                         result = b.replace(s, d, inplace=inplace,
     */
          __pyx_t_8 = __pyx_v_rb; __Pyx_INCREF(__pyx_t_8); __pyx_t_14 = 0;
          for (;;) {
            if (__pyx_t_14 >= PyList_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_11 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_14); __Pyx_INCREF(__pyx_t_11); __pyx_t_14++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2463; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_11 = PySequence_ITEM(__pyx_t_8, __pyx_t_14); __pyx_t_14++; if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2463; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
            __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_11);
            __pyx_t_11 = 0;

     2464:                     if b.dtype == np.object_:

            /* "pandas/internals.pyx":2464
     *                 new_rb = []
     *                 for b in rb:
     *                     if b.dtype == np.object_:             # <<<<<<<<<<<<<<
     *                         result = b.replace(s, d, inplace=inplace,
     *                                            regex=regex)
     */
            __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_dtype); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_object_2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_t_2 = PyObject_RichCompare(__pyx_t_11, __pyx_t_12, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            if (__pyx_t_7) {

     2465:                         result = b.replace(s, d, inplace=inplace,

              /* "pandas/internals.pyx":2465
     *                 for b in rb:
     *                     if b.dtype == np.object_:
     *                         result = b.replace(s, d, inplace=inplace,             # <<<<<<<<<<<<<<
     *                                            regex=regex)
     *                         if isinstance(result, list):
     */
              __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_replace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_INCREF(__pyx_v_s);
              PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_v_s);
              __Pyx_GIVEREF(__pyx_v_s);
              __Pyx_INCREF(__pyx_v_d);
              PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_v_d);
              __Pyx_GIVEREF(__pyx_v_d);
              __pyx_t_11 = PyDict_New(); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_inplace, __pyx_v_inplace) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

              /* "pandas/internals.pyx":2465
     *                 for b in rb:
     *                     if b.dtype == np.object_:
     *                         result = b.replace(s, d, inplace=inplace,             # <<<<<<<<<<<<<<
     *                                            regex=regex)
     *                         if isinstance(result, list):
     */
              __pyx_t_15 = PyObject_Call(__pyx_t_2, __pyx_t_12, __pyx_t_11); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_15);
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_XDECREF_SET(__pyx_v_result, __pyx_t_15);
              __pyx_t_15 = 0;

     2466:                                            regex=regex)

              /* "pandas/internals.pyx":2466
     *                     if b.dtype == np.object_:
     *                         result = b.replace(s, d, inplace=inplace,
     *                                            regex=regex)             # <<<<<<<<<<<<<<
     *                         if isinstance(result, list):
     *                             new_rb.extend(result)
     */
              if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_regex, __pyx_v_regex) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2467:                         if isinstance(result, list):

              /* "pandas/internals.pyx":2467
     *                         result = b.replace(s, d, inplace=inplace,
     *                                            regex=regex)
     *                         if isinstance(result, list):             # <<<<<<<<<<<<<<
     *                             new_rb.extend(result)
     *                         else:
     */
              __pyx_t_7 = PyList_Check(__pyx_v_result);
              __pyx_t_16 = (__pyx_t_7 != 0);
              if (__pyx_t_16) {

     2468:                             new_rb.extend(result)

                /* "pandas/internals.pyx":2468
     *                                            regex=regex)
     *                         if isinstance(result, list):
     *                             new_rb.extend(result)             # <<<<<<<<<<<<<<
     *                         else:
     *                             new_rb.append(result)
     */
                __pyx_t_17 = __Pyx_PyList_Extend(__pyx_v_new_rb, __pyx_v_result); if (unlikely(__pyx_t_17 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2468; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                goto __pyx_L14;
              }
              /*else*/ {

     2469:                         else:

     2470:                             new_rb.append(result)

                /* "pandas/internals.pyx":2470
     *                             new_rb.extend(result)
     *                         else:
     *                             new_rb.append(result)             # <<<<<<<<<<<<<<
     *                     else:
     *                         # get our mask for this element, sized to this
     */
                __pyx_t_17 = __Pyx_PyList_Append(__pyx_v_new_rb, __pyx_v_result); if (unlikely(__pyx_t_17 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2470; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              __pyx_L14:;
              goto __pyx_L13;
            }
            /*else*/ {

     2471:                     else:

     2472:                         # get our mask for this element, sized to this

     2473:                         # particular block

     2474:                         m = masks[i][b.ref_locs]

              /* "pandas/internals.pyx":2474
     *                         # get our mask for this element, sized to this
     *                         # particular block
     *                         m = masks[i][b.ref_locs]             # <<<<<<<<<<<<<<
     *                         if m.any():
     *                             new_rb.extend(b.putmask(m, d, inplace=True))
     */
              __pyx_t_15 = PyObject_GetItem(__pyx_v_masks, __pyx_v_i); if (unlikely(__pyx_t_15 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2474; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_15);
              __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ref_locs_2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __pyx_t_12 = PyObject_GetItem(__pyx_t_15, __pyx_t_11); if (unlikely(__pyx_t_12 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2474; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __Pyx_XDECREF_SET(__pyx_v_m, __pyx_t_12);
              __pyx_t_12 = 0;

     2475:                         if m.any():

              /* "pandas/internals.pyx":2475
     *                         # particular block
     *                         m = masks[i][b.ref_locs]
     *                         if m.any():             # <<<<<<<<<<<<<<
     *                             new_rb.extend(b.putmask(m, d, inplace=True))
     *                         else:
     */
              __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_m, __pyx_n_s_any); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_12);
              __pyx_t_11 = PyObject_Call(__pyx_t_12, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              __pyx_t_16 = __Pyx_PyObject_IsTrue(__pyx_t_11); if (unlikely(__pyx_t_16 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              if (__pyx_t_16) {

     2476:                             new_rb.extend(b.putmask(m, d, inplace=True))

                /* "pandas/internals.pyx":2476
     *                         m = masks[i][b.ref_locs]
     *                         if m.any():
     *                             new_rb.extend(b.putmask(m, d, inplace=True))             # <<<<<<<<<<<<<<
     *                         else:
     *                             new_rb.append(b)
     */
                __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_putmask); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_11);
                __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_12);
                __Pyx_INCREF(__pyx_v_m);
                PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_v_m);
                __Pyx_GIVEREF(__pyx_v_m);
                __Pyx_INCREF(__pyx_v_d);
                PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_v_d);
                __Pyx_GIVEREF(__pyx_v_d);
                __pyx_t_15 = PyDict_New(); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_15);
                if (PyDict_SetItem(__pyx_t_15, __pyx_n_s_inplace, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __pyx_t_2 = PyObject_Call(__pyx_t_11, __pyx_t_12, __pyx_t_15); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_2);
                __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
                __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
                __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
                __pyx_t_17 = __Pyx_PyList_Extend(__pyx_v_new_rb, __pyx_t_2); if (unlikely(__pyx_t_17 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2476; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
                goto __pyx_L15;
              }
              /*else*/ {

     2477:                         else:

     2478:                             new_rb.append(b)

                /* "pandas/internals.pyx":2478
     *                             new_rb.extend(b.putmask(m, d, inplace=True))
     *                         else:
     *                             new_rb.append(b)             # <<<<<<<<<<<<<<
     *                 rb = new_rb
     *             result_blocks.extend(rb)
     */
                __pyx_t_17 = __Pyx_PyList_Append(__pyx_v_new_rb, __pyx_v_b); if (unlikely(__pyx_t_17 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2478; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              __pyx_L15:;
            }
            __pyx_L13:;
          }
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

     2479:                 rb = new_rb

          /* "pandas/internals.pyx":2479
     *                         else:
     *                             new_rb.append(b)
     *                 rb = new_rb             # <<<<<<<<<<<<<<
     *             result_blocks.extend(rb)
     *
     */
          __Pyx_INCREF(__pyx_v_new_rb);
          __Pyx_DECREF_SET(__pyx_v_rb, __pyx_v_new_rb);
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     2480:             result_blocks.extend(rb)

        /* "pandas/internals.pyx":2480
     *                             new_rb.append(b)
     *                 rb = new_rb
     *             result_blocks.extend(rb)             # <<<<<<<<<<<<<<
     *
     *         bm = self.__class__(result_blocks, self.axes)
     */
        __pyx_t_17 = __Pyx_PyList_Extend(__pyx_v_result_blocks, __pyx_v_rb); if (unlikely(__pyx_t_17 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2480; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2481:

     2482:         bm = self.__class__(result_blocks, self.axes)

      /* "pandas/internals.pyx":2482
     *             result_blocks.extend(rb)
     *
     *         bm = self.__class__(result_blocks, self.axes)             # <<<<<<<<<<<<<<
     *         bm._consolidate_inplace()
     *         return bm
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_result_blocks);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_result_blocks);
      __Pyx_GIVEREF(__pyx_v_result_blocks);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2482; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_bm = __pyx_t_6;
      __pyx_t_6 = 0;

     2483:         bm._consolidate_inplace()

      /* "pandas/internals.pyx":2483
     *
     *         bm = self.__class__(result_blocks, self.axes)
     *         bm._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return bm
     *
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_bm, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2483; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_3 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2483; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2484:         return bm

      /* "pandas/internals.pyx":2484
     *         bm = self.__class__(result_blocks, self.axes)
     *         bm._consolidate_inplace()
     *         return bm             # <<<<<<<<<<<<<<
     *
     *     def prepare_for_merge(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_bm);
      __pyx_r = __pyx_v_bm;
      goto __pyx_L0;

     2485:

     2486:     def prepare_for_merge(self, **kwargs):

    /* "pandas/internals.pyx":2486
     *         return bm
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ prepare for merging, return a new block manager with
     *         Sparse -> Dense
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_79prepare_for_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_78prepare_for_merge[] = " prepare for merging, return a new block manager with\n        Sparse -> Dense\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_79prepare_for_merge = {__Pyx_NAMESTR("prepare_for_merge"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_79prepare_for_merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_78prepare_for_merge)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_79prepare_for_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("prepare_for_merge (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "prepare_for_merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2486; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("prepare_for_merge", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2486; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.prepare_for_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_78prepare_for_merge(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_78prepare_for_merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("prepare_for_merge", 0);

      /* "pandas/internals.pyx":2486
     *         return bm
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ prepare for merging, return a new block manager with
     *         Sparse -> Dense
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.prepare_for_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2486
     *         return bm
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ prepare for merging, return a new block manager with
     *         Sparse -> Dense
     */
      __pyx_tuple__558 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__558)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__558);
      __Pyx_GIVEREF(__pyx_tuple__558);

      /* "pandas/internals.pyx":2486
     *         return bm
     *
     *     def prepare_for_merge(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ prepare for merging, return a new block manager with
     *         Sparse -> Dense
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_79prepare_for_merge, 0, __pyx_n_s_BlockManager_prepare_for_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__559)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_prepare_for_merge, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__559 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__558, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_prepare_for_merge, 2486, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__559)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2487:         """ prepare for merging, return a new block manager with

     2488:         Sparse -> Dense

     2489:         """

     2490:         self._consolidate_inplace()

      /* "pandas/internals.pyx":2490
     *         Sparse -> Dense
     *         """
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         if self._has_sparse:
     *             return self.apply('prepare_for_merge', **kwargs)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2490; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2491:         if self._has_sparse:

      /* "pandas/internals.pyx":2491
     *         """
     *         self._consolidate_inplace()
     *         if self._has_sparse:             # <<<<<<<<<<<<<<
     *             return self.apply('prepare_for_merge', **kwargs)
     *         return self
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_has_sparse); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2491; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     2492:             return self.apply('prepare_for_merge', **kwargs)

        /* "pandas/internals.pyx":2492
     *         self._consolidate_inplace()
     *         if self._has_sparse:
     *             return self.apply('prepare_for_merge', **kwargs)             # <<<<<<<<<<<<<<
     *         return self
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2492; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __pyx_v_kwargs;
        __Pyx_INCREF(__pyx_t_1);
        __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_tuple__74, __pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2492; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

      /* "pandas/internals.pyx":2492
     *         self._consolidate_inplace()
     *         if self._has_sparse:
     *             return self.apply('prepare_for_merge', **kwargs)             # <<<<<<<<<<<<<<
     *         return self
     *
     */
      __pyx_tuple__74 = PyTuple_Pack(1, __pyx_n_s_prepare_for_merge); if (unlikely(!__pyx_tuple__74)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2492; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__74);
      __Pyx_GIVEREF(__pyx_tuple__74);

     2493:         return self

      /* "pandas/internals.pyx":2493
     *         if self._has_sparse:
     *             return self.apply('prepare_for_merge', **kwargs)
     *         return self             # <<<<<<<<<<<<<<
     *
     *     def post_merge(self, objs, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_self);
      __pyx_r = __pyx_v_self;
      goto __pyx_L0;

     2494:

     2495:     def post_merge(self, objs, **kwargs):

    /* "pandas/internals.pyx":2495
     *         return self
     *
     *     def post_merge(self, objs, **kwargs):             # <<<<<<<<<<<<<<
     *         """ try to sparsify items that were previously sparse """
     *         is_sparse = defaultdict(list)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_81post_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_80post_merge[] = " try to sparsify items that were previously sparse ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_81post_merge = {__Pyx_NAMESTR("post_merge"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_81post_merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_80post_merge)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_81post_merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_objs = 0;
      CYTHON_UNUSED PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("post_merge (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_objs,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_objs)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("post_merge", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2495; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "post_merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2495; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_objs = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("post_merge", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2495; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.post_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_80post_merge(__pyx_self, __pyx_v_self, __pyx_v_objs, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_80post_merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_objs, CYTHON_UNUSED PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_is_sparse = NULL;
      PyObject *__pyx_v_o = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("post_merge", 0);

      /* "pandas/internals.pyx":2495
     *         return self
     *
     *     def post_merge(self, objs, **kwargs):             # <<<<<<<<<<<<<<
     *         """ try to sparsify items that were previously sparse """
     *         is_sparse = defaultdict(list)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_AddTraceback("pandas.internals.BlockManager.post_merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_is_sparse);
      __Pyx_XDECREF(__pyx_v_o);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2495
     *         return self
     *
     *     def post_merge(self, objs, **kwargs):             # <<<<<<<<<<<<<<
     *         """ try to sparsify items that were previously sparse """
     *         is_sparse = defaultdict(list)
     */
      __pyx_tuple__560 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_objs, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_is_sparse, __pyx_n_s_o, __pyx_n_s_blk, __pyx_n_s_i); if (unlikely(!__pyx_tuple__560)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__560);
      __Pyx_GIVEREF(__pyx_tuple__560);

      /* "pandas/internals.pyx":2495
     *         return self
     *
     *     def post_merge(self, objs, **kwargs):             # <<<<<<<<<<<<<<
     *         """ try to sparsify items that were previously sparse """
     *         is_sparse = defaultdict(list)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_81post_merge, 0, __pyx_n_s_BlockManager_post_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__561)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_post_merge, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__561 = (PyObject*)__Pyx_PyCode_New(2, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__560, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_post_merge, 2495, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__561)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2495; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2496:         """ try to sparsify items that were previously sparse """

     2497:         is_sparse = defaultdict(list)

      /* "pandas/internals.pyx":2497
     *     def post_merge(self, objs, **kwargs):
     *         """ try to sparsify items that were previously sparse """
     *         is_sparse = defaultdict(list)             # <<<<<<<<<<<<<<
     *         for o in objs:
     *             for blk in o._data.blocks:
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_defaultdict); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(((PyObject *)((PyObject*)(&PyList_Type))));
      PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)((PyObject*)(&PyList_Type))));
      __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyList_Type))));
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_is_sparse = __pyx_t_3;
      __pyx_t_3 = 0;

     2498:         for o in objs:

      /* "pandas/internals.pyx":2498
     *         """ try to sparsify items that were previously sparse """
     *         is_sparse = defaultdict(list)
     *         for o in objs:             # <<<<<<<<<<<<<<
     *             for blk in o._data.blocks:
     *                 if blk.is_sparse:
     */
      if (PyList_CheckExact(__pyx_v_objs) || PyTuple_CheckExact(__pyx_v_objs)) {
        __pyx_t_3 = __pyx_v_objs; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_objs); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_o, __pyx_t_2);
        __pyx_t_2 = 0;

     2499:             for blk in o._data.blocks:

        /* "pandas/internals.pyx":2499
     *         is_sparse = defaultdict(list)
     *         for o in objs:
     *             for blk in o._data.blocks:             # <<<<<<<<<<<<<<
     *                 if blk.is_sparse:
     *
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_o, __pyx_n_s_data); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
          __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_7(__pyx_t_2);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2499; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_1);
          __pyx_t_1 = 0;

     2500:                 if blk.is_sparse:

          /* "pandas/internals.pyx":2500
     *         for o in objs:
     *             for blk in o._data.blocks:
     *                 if blk.is_sparse:             # <<<<<<<<<<<<<<
     *
     *                     # record the dtype of each item
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_is_sparse); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          if (__pyx_t_8) {

     2501:

     2502:                     # record the dtype of each item

     2503:                     for i in blk.items:

            /* "pandas/internals.pyx":2503
     *
     *                     # record the dtype of each item
     *                     for i in blk.items:             # <<<<<<<<<<<<<<
     *                         is_sparse[i].append(blk.dtype)
     *
     */
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
              __pyx_t_9 = __pyx_t_1; __Pyx_INCREF(__pyx_t_9); __pyx_t_10 = 0;
              __pyx_t_11 = NULL;
            } else {
              __pyx_t_10 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_9);
              __pyx_t_11 = Py_TYPE(__pyx_t_9)->tp_iternext;
            }
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            for (;;) {
              if (!__pyx_t_11 && PyList_CheckExact(__pyx_t_9)) {
                if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_9)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_1 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_1 = PySequence_ITEM(__pyx_t_9, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else if (!__pyx_t_11 && PyTuple_CheckExact(__pyx_t_9)) {
                if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_9)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_1 = PySequence_ITEM(__pyx_t_9, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else {
                __pyx_t_1 = __pyx_t_11(__pyx_t_9);
                if (unlikely(!__pyx_t_1)) {
                  PyObject* exc_type = PyErr_Occurred();
                  if (exc_type) {
                    if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                    else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                  }
                  break;
                }
                __Pyx_GOTREF(__pyx_t_1);
              }
              __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
              __pyx_t_1 = 0;

     2504:                         is_sparse[i].append(blk.dtype)

              /* "pandas/internals.pyx":2504
     *                     # record the dtype of each item
     *                     for i in blk.items:
     *                         is_sparse[i].append(blk.dtype)             # <<<<<<<<<<<<<<
     *
     *         if len(is_sparse):
     */
              __pyx_t_1 = PyObject_GetItem(__pyx_v_is_sparse, __pyx_v_i); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2504; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_1);
              __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_dtype); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_12);
              __pyx_t_13 = __Pyx_PyObject_Append(__pyx_t_1, __pyx_t_12); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            }
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L7;
          }
          __pyx_L7:;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2505:

     2506:         if len(is_sparse):

      /* "pandas/internals.pyx":2506
     *                         is_sparse[i].append(blk.dtype)
     *
     *         if len(is_sparse):             # <<<<<<<<<<<<<<
     *             return self.apply('post_merge', items=is_sparse)
     *
     */
      __pyx_t_4 = PyObject_Length(__pyx_v_is_sparse); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2506; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_8 = (__pyx_t_4 != 0);
      if (__pyx_t_8) {

     2507:             return self.apply('post_merge', items=is_sparse)

        /* "pandas/internals.pyx":2507
     *
     *         if len(is_sparse):
     *             return self.apply('post_merge', items=is_sparse)             # <<<<<<<<<<<<<<
     *
     *         return self
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2507; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2507; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_items, __pyx_v_is_sparse) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2507; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_9 = PyObject_Call(__pyx_t_3, __pyx_tuple__75, __pyx_t_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2507; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_r = __pyx_t_9;
        __pyx_t_9 = 0;
        goto __pyx_L0;
      }

      /* "pandas/internals.pyx":2507
     *
     *         if len(is_sparse):
     *             return self.apply('post_merge', items=is_sparse)             # <<<<<<<<<<<<<<
     *
     *         return self
     */
      __pyx_tuple__75 = PyTuple_Pack(1, __pyx_n_s_post_merge); if (unlikely(!__pyx_tuple__75)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2507; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__75);
      __Pyx_GIVEREF(__pyx_tuple__75);

     2508:

     2509:         return self

      /* "pandas/internals.pyx":2509
     *             return self.apply('post_merge', items=is_sparse)
     *
     *         return self             # <<<<<<<<<<<<<<
     *
     *     def is_consolidated(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_self);
      __pyx_r = __pyx_v_self;
      goto __pyx_L0;

     2510:

     2511:     def is_consolidated(self):

    /* "pandas/internals.pyx":2511
     *         return self
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         """
     *         Return True if more than one block with the same dtype
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_83is_consolidated(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_82is_consolidated[] = "\n        Return True if more than one block with the same dtype\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_83is_consolidated = {__Pyx_NAMESTR("is_consolidated"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_83is_consolidated, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_82is_consolidated)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_83is_consolidated(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_consolidated (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_82is_consolidated(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_82is_consolidated(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_consolidated", 0);

      /* "pandas/internals.pyx":2511
     *         return self
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         """
     *         Return True if more than one block with the same dtype
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.is_consolidated", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2511
     *         return self
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         """
     *         Return True if more than one block with the same dtype
     */
      __pyx_tuple__562 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__562)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2511; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__562);
      __Pyx_GIVEREF(__pyx_tuple__562);

      /* "pandas/internals.pyx":2511
     *         return self
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         """
     *         Return True if more than one block with the same dtype
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_83is_consolidated, 0, __pyx_n_s_BlockManager_is_consolidated, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__563)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2511; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_consolidated_2, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2511; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__563 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__562, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_consolidated_2, 2511, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__563)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2511; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2512:         """

     2513:         Return True if more than one block with the same dtype

     2514:         """

     2515:         if not self._known_consolidated:

      /* "pandas/internals.pyx":2515
     *         Return True if more than one block with the same dtype
     *         """
     *         if not self._known_consolidated:             # <<<<<<<<<<<<<<
     *             self._consolidate_check()
     *         return self._is_consolidated
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_known_consolidated); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2515; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2515; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = ((!__pyx_t_2) != 0);
      if (__pyx_t_3) {

     2516:             self._consolidate_check()

        /* "pandas/internals.pyx":2516
     *         """
     *         if not self._known_consolidated:
     *             self._consolidate_check()             # <<<<<<<<<<<<<<
     *         return self._is_consolidated
     *
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_check); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2516; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2517:         return self._is_consolidated

      /* "pandas/internals.pyx":2517
     *         if not self._known_consolidated:
     *             self._consolidate_check()
     *         return self._is_consolidated             # <<<<<<<<<<<<<<
     *
     *     def _consolidate_check(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_consolidated); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     2518:

     2519:     def _consolidate_check(self):

    /* "pandas/internals.pyx":2519
     *         return self._is_consolidated
     *
     *     def _consolidate_check(self):             # <<<<<<<<<<<<<<
     *         ftypes = [blk.ftype for blk in self.blocks]
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_85_consolidate_check(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_85_consolidate_check = {__Pyx_NAMESTR("_consolidate_check"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_85_consolidate_check, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_85_consolidate_check(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_check (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_84_consolidate_check(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_84_consolidate_check(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_ftypes = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_check", 0);

      /* "pandas/internals.pyx":2519
     *         return self._is_consolidated
     *
     *     def _consolidate_check(self):             # <<<<<<<<<<<<<<
     *         ftypes = [blk.ftype for blk in self.blocks]
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager._consolidate_check", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ftypes);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2519
     *         return self._is_consolidated
     *
     *     def _consolidate_check(self):             # <<<<<<<<<<<<<<
     *         ftypes = [blk.ftype for blk in self.blocks]
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))
     */
      __pyx_tuple__564 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_ftypes, __pyx_n_s_blk); if (unlikely(!__pyx_tuple__564)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__564);
      __Pyx_GIVEREF(__pyx_tuple__564);

      /* "pandas/internals.pyx":2519
     *         return self._is_consolidated
     *
     *     def _consolidate_check(self):             # <<<<<<<<<<<<<<
     *         ftypes = [blk.ftype for blk in self.blocks]
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_85_consolidate_check, 0, __pyx_n_s_BlockManager__consolidate_check, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__565)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_consolidate_check, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__565 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__564, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_consolidate_check, 2519, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__565)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2520:         ftypes = [blk.ftype for blk in self.blocks]

      /* "pandas/internals.pyx":2520
     *
     *     def _consolidate_check(self):
     *         ftypes = [blk.ftype for blk in self.blocks]             # <<<<<<<<<<<<<<
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))
     *         self._known_consolidated = True
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_ftype_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_2))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_ftypes = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     2521:         self._is_consolidated = len(ftypes) == len(set(ftypes))

      /* "pandas/internals.pyx":2521
     *     def _consolidate_check(self):
     *         ftypes = [blk.ftype for blk in self.blocks]
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))             # <<<<<<<<<<<<<<
     *         self._known_consolidated = True
     *         self._set_has_sparse()
     */
      __pyx_t_4 = PyList_GET_SIZE(__pyx_v_ftypes); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2521; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2521; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_ftypes);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_ftypes);
      __Pyx_GIVEREF(__pyx_v_ftypes);
      __pyx_t_3 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2521; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_6 = PySet_Size(__pyx_t_3); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2521; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyBool_FromLong((__pyx_t_4 == __pyx_t_6)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2521; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_is_consolidated, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2521; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2522:         self._known_consolidated = True

      /* "pandas/internals.pyx":2522
     *         ftypes = [blk.ftype for blk in self.blocks]
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))
     *         self._known_consolidated = True             # <<<<<<<<<<<<<<
     *         self._set_has_sparse()
     *
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_known_consolidated, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2523:         self._set_has_sparse()

      /* "pandas/internals.pyx":2523
     *         self._is_consolidated = len(ftypes) == len(set(ftypes))
     *         self._known_consolidated = True
     *         self._set_has_sparse()             # <<<<<<<<<<<<<<
     *
     *     def _set_has_sparse(self):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_has_sparse); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2524:

     2525:     def _set_has_sparse(self):

    /* "pandas/internals.pyx":2525
     *         self._set_has_sparse()
     *
     *     def _set_has_sparse(self):             # <<<<<<<<<<<<<<
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_87_set_has_sparse(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_87_set_has_sparse = {__Pyx_NAMESTR("_set_has_sparse"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_87_set_has_sparse, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_87_set_has_sparse(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_has_sparse (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_86_set_has_sparse(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_15_set_has_sparse_2generator3(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":2525
     *         self._set_has_sparse()
     *
     *     def _set_has_sparse(self):             # <<<<<<<<<<<<<<
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_86_set_has_sparse(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_12__set_has_sparse *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_has_sparse", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_12__set_has_sparse *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_12__set_has_sparse(__pyx_ptype_6pandas_9internals___pyx_scope_struct_12__set_has_sparse, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);

      /* "pandas/internals.pyx":2525
     *         self._set_has_sparse()
     *
     *     def _set_has_sparse(self):             # <<<<<<<<<<<<<<
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.BlockManager._set_has_sparse", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2525
     *         self._set_has_sparse()
     *
     *     def _set_has_sparse(self):             # <<<<<<<<<<<<<<
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))
     *
     */
      __pyx_tuple__566 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__566)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2525; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__566);
      __Pyx_GIVEREF(__pyx_tuple__566);

      /* "pandas/internals.pyx":2525
     *         self._set_has_sparse()
     *
     *     def _set_has_sparse(self):             # <<<<<<<<<<<<<<
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_87_set_has_sparse, 0, __pyx_n_s_BlockManager__set_has_sparse, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__567)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2525; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_has_sparse, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2525; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__567 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__566, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_has_sparse, 2525, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__567)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2525; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":2525
     *         self._set_has_sparse()
     *
     *     def _set_has_sparse(self):             # <<<<<<<<<<<<<<
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))
     *
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_12__set_has_sparse {
      PyObject_HEAD
      PyObject *__pyx_v_self;
    };

     2526:         self._has_sparse = any((blk.is_sparse for blk in self.blocks))

    /* "pandas/internals.pyx":2526
     *
     *     def _set_has_sparse(self):
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))             # <<<<<<<<<<<<<<
     *
     *     @property
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_15_set_has_sparse_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_13_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_13_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_13_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_13_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_12__set_has_sparse *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_15_set_has_sparse_2generator3, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._set_has_sparse.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_15_set_has_sparse_2generator3(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_blk);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_blk, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_blk, __pyx_n_s_is_sparse); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        __Pyx_XGIVEREF(__pyx_t_2);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_3;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_4;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L6_resume_from_yield:;
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_2);
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_4 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

      /* "pandas/internals.pyx":2526
     *
     *     def _set_has_sparse(self):
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __pyx_t_1 = __pyx_pf_6pandas_9internals_12BlockManager_15_set_has_sparse_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_builtin_any, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_has_sparse, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

    /* "pandas/internals.pyx":2526
     *
     *     def _set_has_sparse(self):
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))             # <<<<<<<<<<<<<<
     *
     *     @property
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_13_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_12__set_has_sparse *__pyx_outer_scope;
      PyObject *__pyx_v_blk;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     2527:

     2528:     @property

      /* "pandas/internals.pyx":2528
     *         self._has_sparse = any((blk.is_sparse for blk in self.blocks))
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def is_mixed_type(self):
     *         # Warning, consolidation needs to get checked upstairs
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_mixed_type, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2529; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2529:     def is_mixed_type(self):

    /* "pandas/internals.pyx":2529
     *
     *     @property
     *     def is_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_89is_mixed_type(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_89is_mixed_type = {__Pyx_NAMESTR("is_mixed_type"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_89is_mixed_type, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_89is_mixed_type(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_mixed_type (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_88is_mixed_type(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_88is_mixed_type(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_mixed_type", 0);

      /* "pandas/internals.pyx":2529
     *
     *     @property
     *     def is_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.BlockManager.is_mixed_type", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2529
     *
     *     @property
     *     def is_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */
      __pyx_tuple__568 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__568)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2529; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__568);
      __Pyx_GIVEREF(__pyx_tuple__568);

      /* "pandas/internals.pyx":2529
     *
     *     @property
     *     def is_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_89is_mixed_type, 0, __pyx_n_s_BlockManager_is_mixed_type, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__569)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2529; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__569 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__568, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_mixed_type, 2529, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__569)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2529; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2530:         # Warning, consolidation needs to get checked upstairs

     2531:         self._consolidate_inplace()

      /* "pandas/internals.pyx":2531
     *     def is_mixed_type(self):
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return len(self.blocks) > 1
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2531; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2531; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2532:         return len(self.blocks) > 1

      /* "pandas/internals.pyx":2532
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     *         return len(self.blocks) > 1             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2532; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2532; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyBool_FromLong((__pyx_t_3 > 1)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2532; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2533:

     2534:     @property

      /* "pandas/internals.pyx":2534
     *         return len(self.blocks) > 1
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def is_numeric_mixed_type(self):
     *         # Warning, consolidation needs to get checked upstairs
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2534; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2534; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_numeric_mixed_type, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2535; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2535:     def is_numeric_mixed_type(self):

    /* "pandas/internals.pyx":2535
     *
     *     @property
     *     def is_numeric_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_91is_numeric_mixed_type(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_91is_numeric_mixed_type = {__Pyx_NAMESTR("is_numeric_mixed_type"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_91is_numeric_mixed_type, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_91is_numeric_mixed_type(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_numeric_mixed_type (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_90is_numeric_mixed_type(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_90is_numeric_mixed_type(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_numeric_mixed_type", 0);

      /* "pandas/internals.pyx":2535
     *
     *     @property
     *     def is_numeric_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.is_numeric_mixed_type", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2535
     *
     *     @property
     *     def is_numeric_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */
      __pyx_tuple__570 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_block); if (unlikely(!__pyx_tuple__570)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2535; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__570);
      __Pyx_GIVEREF(__pyx_tuple__570);

      /* "pandas/internals.pyx":2535
     *
     *     @property
     *     def is_numeric_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_91is_numeric_mixed_type, 0, __pyx_n_s_BlockManager_is_numeric_mixed_ty, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__571)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2535; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__571 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__570, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_numeric_mixed_type, 2535, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__571)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2535; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2536:         # Warning, consolidation needs to get checked upstairs

     2537:         self._consolidate_inplace()

      /* "pandas/internals.pyx":2537
     *     def is_numeric_mixed_type(self):
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return all([block.is_numeric for block in self.blocks])
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2537; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2538:         return all([block.is_numeric for block in self.blocks])

      /* "pandas/internals.pyx":2538
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     *         return all([block.is_numeric for block in self.blocks])             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_3 = __pyx_t_1; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_is_numeric); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_builtin_all, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2539:

     2540:     @property

      /* "pandas/internals.pyx":2540
     *         return all([block.is_numeric for block in self.blocks])
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def is_datelike_mixed_type(self):
     *         # Warning, consolidation needs to get checked upstairs
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_datelike_mixed_type, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2541; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2541:     def is_datelike_mixed_type(self):

    /* "pandas/internals.pyx":2541
     *
     *     @property
     *     def is_datelike_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_93is_datelike_mixed_type(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_93is_datelike_mixed_type = {__Pyx_NAMESTR("is_datelike_mixed_type"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_93is_datelike_mixed_type, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_93is_datelike_mixed_type(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_datelike_mixed_type (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_92is_datelike_mixed_type(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_92is_datelike_mixed_type(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_datelike_mixed_type", 0);

      /* "pandas/internals.pyx":2541
     *
     *     @property
     *     def is_datelike_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.is_datelike_mixed_type", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2541
     *
     *     @property
     *     def is_datelike_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */
      __pyx_tuple__572 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_block); if (unlikely(!__pyx_tuple__572)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2541; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__572);
      __Pyx_GIVEREF(__pyx_tuple__572);

      /* "pandas/internals.pyx":2541
     *
     *     @property
     *     def is_datelike_mixed_type(self):             # <<<<<<<<<<<<<<
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_93is_datelike_mixed_type, 0, __pyx_n_s_BlockManager_is_datelike_mixed_t, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__573)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2541; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__573 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__572, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_datelike_mixed_type, 2541, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__573)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2541; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2542:         # Warning, consolidation needs to get checked upstairs

     2543:         self._consolidate_inplace()

      /* "pandas/internals.pyx":2543
     *     def is_datelike_mixed_type(self):
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return any([block.is_datelike for block in self.blocks])
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2544:         return any([block.is_datelike for block in self.blocks])

      /* "pandas/internals.pyx":2544
     *         # Warning, consolidation needs to get checked upstairs
     *         self._consolidate_inplace()
     *         return any([block.is_datelike for block in self.blocks])             # <<<<<<<<<<<<<<
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_3 = __pyx_t_1; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_3)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_3, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_5(__pyx_t_3);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_is_datelike); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_builtin_any, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2544; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     2545:

     2546:     def get_block_map(self, copy=False, typ=None, columns=None,

    /* "pandas/internals.pyx":2546
     *         return any([block.is_datelike for block in self.blocks])
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,             # <<<<<<<<<<<<<<
     *                       is_numeric=False, is_bool=False):
     *         """ return a dictionary mapping the ftype -> block list
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_95get_block_map(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_94get_block_map[] = " return a dictionary mapping the ftype -> block list\n\n            Parameters\n            ----------\n            typ : return a list/dict\n            copy : copy if indicated\n            columns : a column filter list\n            filter if the type is indicated ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_95get_block_map = {__Pyx_NAMESTR("get_block_map"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_95get_block_map, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_94get_block_map)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_95get_block_map(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_typ = 0;
      PyObject *__pyx_v_columns = 0;
      PyObject *__pyx_v_is_numeric = 0;
      PyObject *__pyx_v_is_bool = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_block_map (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_copy,&__pyx_n_s_typ,&__pyx_n_s_columns,&__pyx_n_s_is_numeric,&__pyx_n_s_is_bool,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_False));
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":2546
     *         return any([block.is_datelike for block in self.blocks])
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,             # <<<<<<<<<<<<<<
     *                       is_numeric=False, is_bool=False):
     *         """ return a dictionary mapping the ftype -> block list
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":2546
     *         return any([block.is_datelike for block in self.blocks])
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,             # <<<<<<<<<<<<<<
     *                       is_numeric=False, is_bool=False):
     *         """ return a dictionary mapping the ftype -> block list
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_94get_block_map(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_copy, PyObject *__pyx_v_typ, PyObject *__pyx_v_columns, PyObject *__pyx_v_is_numeric, PyObject *__pyx_v_is_bool) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *__pyx_cur_scope;
      PyObject *__pyx_v_bm = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_filter_blocks = NULL;
      PyObject *__pyx_v_filter_columns = 0;
      PyObject *__pyx_v_maybe_copy = NULL;
      PyObject *__pyx_v_key = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_block_map", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_14_get_block_map(__pyx_ptype_6pandas_9internals___pyx_scope_struct_14_get_block_map, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_copy = __pyx_v_copy;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_copy);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_copy);
      __pyx_cur_scope->__pyx_v_columns = __pyx_v_columns;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_columns);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_columns);

      /* "pandas/internals.pyx":2546
     *         return any([block.is_datelike for block in self.blocks])
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,             # <<<<<<<<<<<<<<
     *                       is_numeric=False, is_bool=False):
     *         """ return a dictionary mapping the ftype -> block list
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_bm);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_filter_blocks);
      __Pyx_XDECREF(__pyx_v_filter_columns);
      __Pyx_XDECREF(__pyx_v_maybe_copy);
      __Pyx_XDECREF(__pyx_v_key);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2546
     *         return any([block.is_datelike for block in self.blocks])
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,             # <<<<<<<<<<<<<<
     *                       is_numeric=False, is_bool=False):
     *         """ return a dictionary mapping the ftype -> block list
     */
      __pyx_tuple__574 = PyTuple_Pack(14, __pyx_n_s_self, __pyx_n_s_copy, __pyx_n_s_typ, __pyx_n_s_columns, __pyx_n_s_is_numeric, __pyx_n_s_is_bool, __pyx_n_s_bm, __pyx_n_s_b, __pyx_n_s_filter_blocks, __pyx_n_s_filter_columns, __pyx_n_s_filter_columns, __pyx_n_s_maybe_copy, __pyx_n_s_maybe_copy, __pyx_n_s_key); if (unlikely(!__pyx_tuple__574)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__574);
      __Pyx_GIVEREF(__pyx_tuple__574);
      __pyx_codeobj__575 = (PyObject*)__Pyx_PyCode_New(6, 0, 14, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__574, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_block_map, 2546, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__575)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2546
     *         return any([block.is_datelike for block in self.blocks])
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,             # <<<<<<<<<<<<<<
     *                       is_numeric=False, is_bool=False):
     *         """ return a dictionary mapping the ftype -> block list
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_95get_block_map, 0, __pyx_n_s_BlockManager_get_block_map, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__575)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__576);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_block_map, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__576 = PyTuple_Pack(5, ((PyObject *)Py_False), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_False), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__576)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__576);
      __Pyx_GIVEREF(__pyx_tuple__576);

    /* "pandas/internals.pyx":2546
     *         return any([block.is_datelike for block in self.blocks])
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,             # <<<<<<<<<<<<<<
     *                       is_numeric=False, is_bool=False):
     *         """ return a dictionary mapping the ftype -> block list
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map {
      PyObject_HEAD
      PyObject *__pyx_v_columns;
      PyObject *__pyx_v_copy;
    };

     2547:                       is_numeric=False, is_bool=False):

        /* "pandas/internals.pyx":2547
     *
     *     def get_block_map(self, copy=False, typ=None, columns=None,
     *                       is_numeric=False, is_bool=False):             # <<<<<<<<<<<<<<
     *         """ return a dictionary mapping the ftype -> block list
     *
     */
        values[4] = ((PyObject *)((PyObject *)Py_False));
        values[5] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_typ);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_columns);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_is_numeric);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_is_bool);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_block_map") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2546; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_copy = values[1];
        __pyx_v_typ = values[2];
        __pyx_v_columns = values[3];
        __pyx_v_is_numeric = values[4];
        __pyx_v_is_bool = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_block_map", 0, 1, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2546; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_94get_block_map(__pyx_self, __pyx_v_self, __pyx_v_copy, __pyx_v_typ, __pyx_v_columns, __pyx_v_is_numeric, __pyx_v_is_bool);

     2548:         """ return a dictionary mapping the ftype -> block list

     2549:

     2550:             Parameters

     2551:             ----------

     2552:             typ : return a list/dict

     2553:             copy : copy if indicated

     2554:             columns : a column filter list

     2555:             filter if the type is indicated """

     2556:

     2557:         # short circuit - mainly for merging

     2558:         if (typ == 'dict' and columns is None and not is_numeric and

      /* "pandas/internals.pyx":2558
     *
     *         # short circuit - mainly for merging
     *         if (typ == 'dict' and columns is None and not is_numeric and             # <<<<<<<<<<<<<<
     *                 not is_bool and not copy):
     *             bm = defaultdict(list)
     */
      __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_typ, __pyx_n_s_dict, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {
        __pyx_t_2 = (__pyx_cur_scope->__pyx_v_columns == Py_None);
        if (__pyx_t_2) {
          __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_is_numeric); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_4 = (!__pyx_t_3);
          if (__pyx_t_4) {

     2559:                 not is_bool and not copy):

            /* "pandas/internals.pyx":2559
     *         # short circuit - mainly for merging
     *         if (typ == 'dict' and columns is None and not is_numeric and
     *                 not is_bool and not copy):             # <<<<<<<<<<<<<<
     *             bm = defaultdict(list)
     *             for b in self.blocks:
     */
            __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_is_bool); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_5 = (!__pyx_t_3);
            if (__pyx_t_5) {
              __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_copy); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_6 = (!__pyx_t_3);
              __pyx_t_3 = __pyx_t_6;
            } else {
              __pyx_t_3 = __pyx_t_5;
            }
            __pyx_t_5 = __pyx_t_3;
          } else {
            __pyx_t_5 = __pyx_t_4;
          }
          __pyx_t_4 = __pyx_t_5;
        } else {
          __pyx_t_4 = __pyx_t_2;
        }
        __pyx_t_2 = __pyx_t_4;
      } else {
        __pyx_t_2 = __pyx_t_1;
      }
      if (__pyx_t_2) {

     2560:             bm = defaultdict(list)

        /* "pandas/internals.pyx":2560
     *         if (typ == 'dict' and columns is None and not is_numeric and
     *                 not is_bool and not copy):
     *             bm = defaultdict(list)             # <<<<<<<<<<<<<<
     *             for b in self.blocks:
     *                 bm[str(b.ftype)].append(b)
     */
        __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_defaultdict); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_INCREF(((PyObject *)((PyObject*)(&PyList_Type))));
        PyTuple_SET_ITEM(__pyx_t_8, 0, ((PyObject *)((PyObject*)(&PyList_Type))));
        __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyList_Type))));
        __pyx_t_9 = PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_bm = __pyx_t_9;
        __pyx_t_9 = 0;

     2561:             for b in self.blocks:

        /* "pandas/internals.pyx":2561
     *                 not is_bool and not copy):
     *             bm = defaultdict(list)
     *             for b in self.blocks:             # <<<<<<<<<<<<<<
     *                 bm[str(b.ftype)].append(b)
     *             return bm
     */
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        if (PyList_CheckExact(__pyx_t_9) || PyTuple_CheckExact(__pyx_t_9)) {
          __pyx_t_8 = __pyx_t_9; __Pyx_INCREF(__pyx_t_8); __pyx_t_10 = 0;
          __pyx_t_11 = NULL;
        } else {
          __pyx_t_10 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_11 = Py_TYPE(__pyx_t_8)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        for (;;) {
          if (!__pyx_t_11 && PyList_CheckExact(__pyx_t_8)) {
            if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_9 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_9 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_11 && PyTuple_CheckExact(__pyx_t_8)) {
            if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_9 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_9 = __pyx_t_11(__pyx_t_8);
            if (unlikely(!__pyx_t_9)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_9);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_9);
          __pyx_t_9 = 0;

     2562:                 bm[str(b.ftype)].append(b)

          /* "pandas/internals.pyx":2562
     *             bm = defaultdict(list)
     *             for b in self.blocks:
     *                 bm[str(b.ftype)].append(b)             # <<<<<<<<<<<<<<
     *             return bm
     *
     */
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ftype_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyString_Type))), __pyx_t_7, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_7 = PyObject_GetItem(__pyx_v_bm, __pyx_t_9); if (unlikely(__pyx_t_7 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2562; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_12 = __Pyx_PyObject_Append(__pyx_t_7, __pyx_v_b); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

     2563:             return bm

        /* "pandas/internals.pyx":2563
     *             for b in self.blocks:
     *                 bm[str(b.ftype)].append(b)
     *             return bm             # <<<<<<<<<<<<<<
     *
     *         self._consolidate_inplace()
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_bm);
        __pyx_r = __pyx_v_bm;
        goto __pyx_L0;
      }

     2564:

     2565:         self._consolidate_inplace()

      /* "pandas/internals.pyx":2565
     *             return bm
     *
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *
     *         if is_numeric:
     */
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2565; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_t_7 = PyObject_Call(__pyx_t_8, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2565; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

     2566:

     2567:         if is_numeric:

      /* "pandas/internals.pyx":2567
     *         self._consolidate_inplace()
     *
     *         if is_numeric:             # <<<<<<<<<<<<<<
     *             filter_blocks = lambda block: block.is_numeric
     *         elif is_bool:
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_is_numeric); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2567; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     2568:             filter_blocks = lambda block: block.is_numeric

    /* "pandas/internals.pyx":2568
     *
     *         if is_numeric:
     *             filter_blocks = lambda block: block.is_numeric             # <<<<<<<<<<<<<<
     *         elif is_bool:
     *             filter_blocks = lambda block: block.is_bool
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_4lambda11(PyObject *__pyx_self, PyObject *__pyx_v_block); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_4lambda11 = {__Pyx_NAMESTR("lambda11"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_4lambda11, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_4lambda11(PyObject *__pyx_self, PyObject *__pyx_v_block) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda11 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda11(__pyx_self, ((PyObject *)__pyx_v_block));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda11(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_block) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda11", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_is_numeric); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2568; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map.lambda11", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

        /* "pandas/internals.pyx":2568
     *
     *         if is_numeric:
     *             filter_blocks = lambda block: block.is_numeric             # <<<<<<<<<<<<<<
     *         elif is_bool:
     *             filter_blocks = lambda block: block.is_bool
     */
        __pyx_t_7 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_4lambda11, 0, __pyx_n_s_BlockManager_get_block_map_local, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2568; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_v_filter_blocks = __pyx_t_7;
        __pyx_t_7 = 0;
        goto __pyx_L6;
      }

     2569:         elif is_bool:

      /* "pandas/internals.pyx":2569
     *         if is_numeric:
     *             filter_blocks = lambda block: block.is_numeric
     *         elif is_bool:             # <<<<<<<<<<<<<<
     *             filter_blocks = lambda block: block.is_bool
     *         else:
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_is_bool); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2569; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     2570:             filter_blocks = lambda block: block.is_bool

    /* "pandas/internals.pyx":2570
     *             filter_blocks = lambda block: block.is_numeric
     *         elif is_bool:
     *             filter_blocks = lambda block: block.is_bool             # <<<<<<<<<<<<<<
     *         else:
     *             filter_blocks = lambda block: True
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_5lambda12(PyObject *__pyx_self, PyObject *__pyx_v_block); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_5lambda12 = {__Pyx_NAMESTR("lambda12"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_5lambda12, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_5lambda12(PyObject *__pyx_self, PyObject *__pyx_v_block) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda12 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda12(__pyx_self, ((PyObject *)__pyx_v_block));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda12(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_block) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda12", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_is_bool); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2570; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map.lambda12", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

        /* "pandas/internals.pyx":2570
     *             filter_blocks = lambda block: block.is_numeric
     *         elif is_bool:
     *             filter_blocks = lambda block: block.is_bool             # <<<<<<<<<<<<<<
     *         else:
     *             filter_blocks = lambda block: True
     */
        __pyx_t_7 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_5lambda12, 0, __pyx_n_s_BlockManager_get_block_map_local, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2570; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_v_filter_blocks = __pyx_t_7;
        __pyx_t_7 = 0;
        goto __pyx_L6;
      }
      /*else*/ {

     2571:         else:

     2572:             filter_blocks = lambda block: True

    /* "pandas/internals.pyx":2572
     *             filter_blocks = lambda block: block.is_bool
     *         else:
     *             filter_blocks = lambda block: True             # <<<<<<<<<<<<<<
     *
     *         def filter_columns(b):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_6lambda13(PyObject *__pyx_self, PyObject *__pyx_v_block); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_6lambda13 = {__Pyx_NAMESTR("lambda13"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_6lambda13, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_6lambda13(PyObject *__pyx_self, PyObject *__pyx_v_block) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda13 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda13(__pyx_self, ((PyObject *)__pyx_v_block));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda13(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_block) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda13", 0);
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_True);
      __pyx_r = Py_True;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

        /* "pandas/internals.pyx":2572
     *             filter_blocks = lambda block: block.is_bool
     *         else:
     *             filter_blocks = lambda block: True             # <<<<<<<<<<<<<<
     *
     *         def filter_columns(b):
     */
        __pyx_t_7 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_6lambda13, 0, __pyx_n_s_BlockManager_get_block_map_local, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2572; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_v_filter_blocks = __pyx_t_7;
        __pyx_t_7 = 0;
      }
      __pyx_L6:;

     2573:

     2574:         def filter_columns(b):

    /* "pandas/internals.pyx":2574
     *             filter_blocks = lambda block: True
     *
     *         def filter_columns(b):             # <<<<<<<<<<<<<<
     *             if columns:
     *                 if not columns in b.items:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_1filter_columns(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_1filter_columns = {__Pyx_NAMESTR("filter_columns"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_1filter_columns, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_1filter_columns(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("filter_columns (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_13get_block_map_filter_columns(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_13get_block_map_filter_columns(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("filter_columns", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;
      __Pyx_INCREF(__pyx_v_b);

      /* "pandas/internals.pyx":2574
     *             filter_blocks = lambda block: True
     *
     *         def filter_columns(b):             # <<<<<<<<<<<<<<
     *             if columns:
     *                 if not columns in b.items:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map.filter_columns", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2574
     *             filter_blocks = lambda block: True
     *
     *         def filter_columns(b):             # <<<<<<<<<<<<<<
     *             if columns:
     *                 if not columns in b.items:
     */
      __pyx_tuple__76 = PyTuple_Pack(1, __pyx_n_s_b); if (unlikely(!__pyx_tuple__76)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__76);
      __Pyx_GIVEREF(__pyx_tuple__76);

      /* "pandas/internals.pyx":2574
     *             filter_blocks = lambda block: True
     *
     *         def filter_columns(b):             # <<<<<<<<<<<<<<
     *             if columns:
     *                 if not columns in b.items:
     */
      __pyx_t_7 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_1filter_columns, 0, __pyx_n_s_BlockManager_get_block_map_local_2, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__77)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_v_filter_columns = __pyx_t_7;
      __pyx_t_7 = 0;
      __pyx_codeobj__77 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__76, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_filter_columns, 2574, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__77)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2575:             if columns:

      /* "pandas/internals.pyx":2575
     *
     *         def filter_columns(b):
     *             if columns:             # <<<<<<<<<<<<<<
     *                 if not columns in b.items:
     *                     return None
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_columns)) { __Pyx_RaiseClosureNameError("columns"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2575; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_columns); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2575; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     2576:                 if not columns in b.items:

        /* "pandas/internals.pyx":2576
     *         def filter_columns(b):
     *             if columns:
     *                 if not columns in b.items:             # <<<<<<<<<<<<<<
     *                     return None
     *                 b = b.reindex_items_from(columns)
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2576; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = (__Pyx_PySequence_Contains(__pyx_cur_scope->__pyx_v_columns, __pyx_t_2, Py_NE)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2576; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_3 = (__pyx_t_1 != 0);
        if (__pyx_t_3) {

     2577:                     return None

          /* "pandas/internals.pyx":2577
     *             if columns:
     *                 if not columns in b.items:
     *                     return None             # <<<<<<<<<<<<<<
     *                 b = b.reindex_items_from(columns)
     *             return b
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(Py_None);
          __pyx_r = Py_None;
          goto __pyx_L0;
        }

     2578:                 b = b.reindex_items_from(columns)

        /* "pandas/internals.pyx":2578
     *                 if not columns in b.items:
     *                     return None
     *                 b = b.reindex_items_from(columns)             # <<<<<<<<<<<<<<
     *             return b
     *
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_reindex_items_from); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_columns);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_cur_scope->__pyx_v_columns);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_columns);
        __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_b, __pyx_t_5);
        __pyx_t_5 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2579:             return b

      /* "pandas/internals.pyx":2579
     *                     return None
     *                 b = b.reindex_items_from(columns)
     *             return b             # <<<<<<<<<<<<<<
     *
     *         maybe_copy = lambda b: b.copy() if copy else b
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_b);
      __pyx_r = __pyx_v_b;
      goto __pyx_L0;

     2580:

     2581:         maybe_copy = lambda b: b.copy() if copy else b

    /* "pandas/internals.pyx":2581
     *             return b
     *
     *         maybe_copy = lambda b: b.copy() if copy else b             # <<<<<<<<<<<<<<
     *
     *         def maybe_copy(b):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_7lambda14(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_7lambda14 = {__Pyx_NAMESTR("lambda14"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_7lambda14, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_7lambda14(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda14 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda14(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda14(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda14", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;
      __Pyx_XDECREF(__pyx_r);
      if (unlikely(!__pyx_cur_scope->__pyx_v_copy)) { __Pyx_RaiseClosureNameError("copy"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2581; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_copy); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_copy); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_1 = __pyx_t_4;
        __pyx_t_4 = 0;
      } else {
        __Pyx_INCREF(__pyx_v_b);
        __pyx_t_1 = __pyx_v_b;
      }
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map.lambda14", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2581
     *             return b
     *
     *         maybe_copy = lambda b: b.copy() if copy else b             # <<<<<<<<<<<<<<
     *
     *         def maybe_copy(b):
     */
      __pyx_t_7 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_7lambda14, 0, __pyx_n_s_BlockManager_get_block_map_local, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_v_maybe_copy = __pyx_t_7;
      __pyx_t_7 = 0;

     2582:

     2583:         def maybe_copy(b):

    /* "pandas/internals.pyx":2583
     *         maybe_copy = lambda b: b.copy() if copy else b
     *
     *         def maybe_copy(b):             # <<<<<<<<<<<<<<
     *             if copy:
     *                 b = b.copy()
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_3maybe_copy(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_3maybe_copy = {__Pyx_NAMESTR("maybe_copy"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_3maybe_copy, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_3maybe_copy(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("maybe_copy (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_13get_block_map_2maybe_copy(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_13get_block_map_2maybe_copy(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("maybe_copy", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_14_get_block_map *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;
      __Pyx_INCREF(__pyx_v_b);

      /* "pandas/internals.pyx":2583
     *         maybe_copy = lambda b: b.copy() if copy else b
     *
     *         def maybe_copy(b):             # <<<<<<<<<<<<<<
     *             if copy:
     *                 b = b.copy()
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map.maybe_copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2583
     *         maybe_copy = lambda b: b.copy() if copy else b
     *
     *         def maybe_copy(b):             # <<<<<<<<<<<<<<
     *             if copy:
     *                 b = b.copy()
     */
      __pyx_tuple__78 = PyTuple_Pack(1, __pyx_n_s_b); if (unlikely(!__pyx_tuple__78)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2583; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__78);
      __Pyx_GIVEREF(__pyx_tuple__78);

      /* "pandas/internals.pyx":2583
     *         maybe_copy = lambda b: b.copy() if copy else b
     *
     *         def maybe_copy(b):             # <<<<<<<<<<<<<<
     *             if copy:
     *                 b = b.copy()
     */
      __pyx_t_7 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_3maybe_copy, 0, __pyx_n_s_BlockManager_get_block_map_local_3, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__79)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2583; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF_SET(__pyx_v_maybe_copy, __pyx_t_7);
      __pyx_t_7 = 0;
      __pyx_codeobj__79 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__78, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_maybe_copy, 2583, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__79)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2583; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2584:             if copy:

      /* "pandas/internals.pyx":2584
     *
     *         def maybe_copy(b):
     *             if copy:             # <<<<<<<<<<<<<<
     *                 b = b.copy()
     *             return b
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_copy)) { __Pyx_RaiseClosureNameError("copy"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2584; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_copy); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2584; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     2585:                 b = b.copy()

        /* "pandas/internals.pyx":2585
     *         def maybe_copy(b):
     *             if copy:
     *                 b = b.copy()             # <<<<<<<<<<<<<<
     *             return b
     *
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2585; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2585; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF_SET(__pyx_v_b, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2586:             return b

      /* "pandas/internals.pyx":2586
     *             if copy:
     *                 b = b.copy()
     *             return b             # <<<<<<<<<<<<<<
     *
     *         if typ == 'list':
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_b);
      __pyx_r = __pyx_v_b;
      goto __pyx_L0;

     2587:

     2588:         if typ == 'list':

      /* "pandas/internals.pyx":2588
     *             return b
     *
     *         if typ == 'list':             # <<<<<<<<<<<<<<
     *             bm = []
     *             for b in self.blocks:
     */
      __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_v_typ, __pyx_n_s_list, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2588; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     2589:             bm = []

        /* "pandas/internals.pyx":2589
     *
     *         if typ == 'list':
     *             bm = []             # <<<<<<<<<<<<<<
     *             for b in self.blocks:
     *                 if filter_blocks(b):
     */
        __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2589; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_v_bm = __pyx_t_7;
        __pyx_t_7 = 0;

     2590:             for b in self.blocks:

        /* "pandas/internals.pyx":2590
     *         if typ == 'list':
     *             bm = []
     *             for b in self.blocks:             # <<<<<<<<<<<<<<
     *                 if filter_blocks(b):
     *                     b = filter_columns(b)
     */
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) {
          __pyx_t_8 = __pyx_t_7; __Pyx_INCREF(__pyx_t_8); __pyx_t_10 = 0;
          __pyx_t_11 = NULL;
        } else {
          __pyx_t_10 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_11 = Py_TYPE(__pyx_t_8)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        for (;;) {
          if (!__pyx_t_11 && PyList_CheckExact(__pyx_t_8)) {
            if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_7); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_11 && PyTuple_CheckExact(__pyx_t_8)) {
            if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_10); __Pyx_INCREF(__pyx_t_7); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_8, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_7 = __pyx_t_11(__pyx_t_8);
            if (unlikely(!__pyx_t_7)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_7);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_7);
          __pyx_t_7 = 0;

     2591:                 if filter_blocks(b):

          /* "pandas/internals.pyx":2591
     *             bm = []
     *             for b in self.blocks:
     *                 if filter_blocks(b):             # <<<<<<<<<<<<<<
     *                     b = filter_columns(b)
     *                     if b is not None:
     */
          __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_INCREF(__pyx_v_b);
          PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_b);
          __Pyx_GIVEREF(__pyx_v_b);
          __pyx_t_9 = PyObject_Call(__pyx_v_filter_blocks, __pyx_t_7, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2591; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (__pyx_t_2) {

     2592:                     b = filter_columns(b)

            /* "pandas/internals.pyx":2592
     *             for b in self.blocks:
     *                 if filter_blocks(b):
     *                     b = filter_columns(b)             # <<<<<<<<<<<<<<
     *                     if b is not None:
     *                         bm.append(maybe_copy(b))
     */
            __pyx_t_9 = __pyx_pf_6pandas_9internals_12BlockManager_13get_block_map_filter_columns(__pyx_v_filter_columns, __pyx_v_b); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2592; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_DECREF_SET(__pyx_v_b, __pyx_t_9);
            __pyx_t_9 = 0;

     2593:                     if b is not None:

            /* "pandas/internals.pyx":2593
     *                 if filter_blocks(b):
     *                     b = filter_columns(b)
     *                     if b is not None:             # <<<<<<<<<<<<<<
     *                         bm.append(maybe_copy(b))
     *
     */
            __pyx_t_2 = (__pyx_v_b != Py_None);
            __pyx_t_1 = (__pyx_t_2 != 0);
            if (__pyx_t_1) {

     2594:                         bm.append(maybe_copy(b))

              /* "pandas/internals.pyx":2594
     *                     b = filter_columns(b)
     *                     if b is not None:
     *                         bm.append(maybe_copy(b))             # <<<<<<<<<<<<<<
     *
     *         else:
     */
              __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_INCREF(__pyx_v_b);
              PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_b);
              __Pyx_GIVEREF(__pyx_v_b);
              __pyx_t_7 = PyObject_Call(__pyx_v_maybe_copy, __pyx_t_9, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_7);
              __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
              __pyx_t_12 = __Pyx_PyObject_Append(__pyx_v_bm, __pyx_t_7); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
              goto __pyx_L11;
            }
            __pyx_L11:;
            goto __pyx_L10;
          }
          __pyx_L10:;
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        goto __pyx_L7;
      }
      /*else*/ {

     2595:

     2596:         else:

     2597:             if typ == 'dtype':

        /* "pandas/internals.pyx":2597
     *
     *         else:
     *             if typ == 'dtype':             # <<<<<<<<<<<<<<
     *                 key = lambda b: b.dtype
     *             else:
     */
        __pyx_t_1 = (__Pyx_PyString_Equals(__pyx_v_typ, __pyx_n_s_dtype, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2597; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_1) {

     2598:                 key = lambda b: b.dtype

    /* "pandas/internals.pyx":2598
     *         else:
     *             if typ == 'dtype':
     *                 key = lambda b: b.dtype             # <<<<<<<<<<<<<<
     *             else:
     *                 key = lambda b: b.ftype
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_8lambda15(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_8lambda15 = {__Pyx_NAMESTR("lambda15"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_8lambda15, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_8lambda15(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda15 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda15(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda15(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda15", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2598; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map.lambda15", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

          /* "pandas/internals.pyx":2598
     *         else:
     *             if typ == 'dtype':
     *                 key = lambda b: b.dtype             # <<<<<<<<<<<<<<
     *             else:
     *                 key = lambda b: b.ftype
     */
          __pyx_t_8 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_8lambda15, 0, __pyx_n_s_BlockManager_get_block_map_local, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2598; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_v_key = __pyx_t_8;
          __pyx_t_8 = 0;
          goto __pyx_L12;
        }
        /*else*/ {

     2599:             else:

     2600:                 key = lambda b: b.ftype

    /* "pandas/internals.pyx":2600
     *                 key = lambda b: b.dtype
     *             else:
     *                 key = lambda b: b.ftype             # <<<<<<<<<<<<<<
     *             bm = defaultdict(list)
     *             for b in self.blocks:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_9lambda16(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_9lambda16 = {__Pyx_NAMESTR("lambda16"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_9lambda16, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_13get_block_map_9lambda16(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda16 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda16(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda16(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda16", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ftype_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_block_map.lambda16", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

          /* "pandas/internals.pyx":2600
     *                 key = lambda b: b.dtype
     *             else:
     *                 key = lambda b: b.ftype             # <<<<<<<<<<<<<<
     *             bm = defaultdict(list)
     *             for b in self.blocks:
     */
          __pyx_t_8 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_13get_block_map_9lambda16, 0, __pyx_n_s_BlockManager_get_block_map_local, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_v_key = __pyx_t_8;
          __pyx_t_8 = 0;
        }
        __pyx_L12:;

     2601:             bm = defaultdict(list)

        /* "pandas/internals.pyx":2601
     *             else:
     *                 key = lambda b: b.ftype
     *             bm = defaultdict(list)             # <<<<<<<<<<<<<<
     *             for b in self.blocks:
     *                 if filter_blocks(b):
     */
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_defaultdict); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(((PyObject *)((PyObject*)(&PyList_Type))));
        PyTuple_SET_ITEM(__pyx_t_7, 0, ((PyObject *)((PyObject*)(&PyList_Type))));
        __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyList_Type))));
        __pyx_t_9 = PyObject_Call(__pyx_t_8, __pyx_t_7, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2601; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_v_bm = __pyx_t_9;
        __pyx_t_9 = 0;

     2602:             for b in self.blocks:

        /* "pandas/internals.pyx":2602
     *                 key = lambda b: b.ftype
     *             bm = defaultdict(list)
     *             for b in self.blocks:             # <<<<<<<<<<<<<<
     *                 if filter_blocks(b):
     *                     b = filter_columns(b)
     */
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        if (PyList_CheckExact(__pyx_t_9) || PyTuple_CheckExact(__pyx_t_9)) {
          __pyx_t_7 = __pyx_t_9; __Pyx_INCREF(__pyx_t_7); __pyx_t_10 = 0;
          __pyx_t_11 = NULL;
        } else {
          __pyx_t_10 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_11 = Py_TYPE(__pyx_t_7)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        for (;;) {
          if (!__pyx_t_11 && PyList_CheckExact(__pyx_t_7)) {
            if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_7)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_9 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_9 = PySequence_ITEM(__pyx_t_7, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_11 && PyTuple_CheckExact(__pyx_t_7)) {
            if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_7)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_10); __Pyx_INCREF(__pyx_t_9); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_9 = PySequence_ITEM(__pyx_t_7, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_9 = __pyx_t_11(__pyx_t_7);
            if (unlikely(!__pyx_t_9)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2602; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_9);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_9);
          __pyx_t_9 = 0;

     2603:                 if filter_blocks(b):

          /* "pandas/internals.pyx":2603
     *             bm = defaultdict(list)
     *             for b in self.blocks:
     *                 if filter_blocks(b):             # <<<<<<<<<<<<<<
     *                     b = filter_columns(b)
     *                     if b is not None:
     */
          __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_INCREF(__pyx_v_b);
          PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_b);
          __Pyx_GIVEREF(__pyx_v_b);
          __pyx_t_8 = PyObject_Call(__pyx_v_filter_blocks, __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2603; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          if (__pyx_t_1) {

     2604:                     b = filter_columns(b)

            /* "pandas/internals.pyx":2604
     *             for b in self.blocks:
     *                 if filter_blocks(b):
     *                     b = filter_columns(b)             # <<<<<<<<<<<<<<
     *                     if b is not None:
     *                         bm[str(key(b))].append(maybe_copy(b))
     */
            __pyx_t_8 = __pyx_pf_6pandas_9internals_12BlockManager_13get_block_map_filter_columns(__pyx_v_filter_columns, __pyx_v_b); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2604; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF_SET(__pyx_v_b, __pyx_t_8);
            __pyx_t_8 = 0;

     2605:                     if b is not None:

            /* "pandas/internals.pyx":2605
     *                 if filter_blocks(b):
     *                     b = filter_columns(b)
     *                     if b is not None:             # <<<<<<<<<<<<<<
     *                         bm[str(key(b))].append(maybe_copy(b))
     *         return bm
     */
            __pyx_t_1 = (__pyx_v_b != Py_None);
            __pyx_t_2 = (__pyx_t_1 != 0);
            if (__pyx_t_2) {

     2606:                         bm[str(key(b))].append(maybe_copy(b))

              /* "pandas/internals.pyx":2606
     *                     b = filter_columns(b)
     *                     if b is not None:
     *                         bm[str(key(b))].append(maybe_copy(b))             # <<<<<<<<<<<<<<
     *         return bm
     *
     */
              __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_8);
              __Pyx_INCREF(__pyx_v_b);
              PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_b);
              __Pyx_GIVEREF(__pyx_v_b);
              __pyx_t_9 = PyObject_Call(__pyx_v_key, __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
              __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_8);
              PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_9);
              __Pyx_GIVEREF(__pyx_t_9);
              __pyx_t_9 = 0;
              __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyString_Type))), __pyx_t_8, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
              __pyx_t_8 = PyObject_GetItem(__pyx_v_bm, __pyx_t_9); if (unlikely(__pyx_t_8 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_8);
              __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
              __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_INCREF(__pyx_v_b);
              PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_b);
              __Pyx_GIVEREF(__pyx_v_b);
              __pyx_t_13 = PyObject_Call(__pyx_v_maybe_copy, __pyx_t_9, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_13);
              __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
              __pyx_t_12 = __Pyx_PyObject_Append(__pyx_t_8, __pyx_t_13); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
              __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
              goto __pyx_L16;
            }
            __pyx_L16:;
            goto __pyx_L15;
          }
          __pyx_L15:;
        }
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      __pyx_L7:;

     2607:         return bm

      /* "pandas/internals.pyx":2607
     *                     if b is not None:
     *                         bm[str(key(b))].append(maybe_copy(b))
     *         return bm             # <<<<<<<<<<<<<<
     *
     *     def get_bool_data(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_bm);
      __pyx_r = __pyx_v_bm;
      goto __pyx_L0;

     2608:

     2609:     def get_bool_data(self, **kwargs):

    /* "pandas/internals.pyx":2609
     *         return bm
     *
     *     def get_bool_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_bool'] = True
     *         return self.get_data(**kwargs)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_97get_bool_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_97get_bool_data = {__Pyx_NAMESTR("get_bool_data"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_97get_bool_data, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_97get_bool_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_bool_data (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "get_bool_data") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2609; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_bool_data", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2609; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_bool_data", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_96get_bool_data(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_96get_bool_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_bool_data", 0);

      /* "pandas/internals.pyx":2609
     *         return bm
     *
     *     def get_bool_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_bool'] = True
     *         return self.get_data(**kwargs)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_bool_data", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2609
     *         return bm
     *
     *     def get_bool_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_bool'] = True
     *         return self.get_data(**kwargs)
     */
      __pyx_tuple__577 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__577)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__577);
      __Pyx_GIVEREF(__pyx_tuple__577);

      /* "pandas/internals.pyx":2609
     *         return bm
     *
     *     def get_bool_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_bool'] = True
     *         return self.get_data(**kwargs)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_97get_bool_data, 0, __pyx_n_s_BlockManager_get_bool_data, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__578)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_bool_data, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__578 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__577, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_bool_data, 2609, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__578)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2609; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2610:         kwargs['is_bool'] = True

      /* "pandas/internals.pyx":2610
     *
     *     def get_bool_data(self, **kwargs):
     *         kwargs['is_bool'] = True             # <<<<<<<<<<<<<<
     *         return self.get_data(**kwargs)
     *
     */
      if (unlikely(PyDict_SetItem(__pyx_v_kwargs, __pyx_n_s_is_bool, Py_True) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2610; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2611:         return self.get_data(**kwargs)

      /* "pandas/internals.pyx":2611
     *     def get_bool_data(self, **kwargs):
     *         kwargs['is_bool'] = True
     *         return self.get_data(**kwargs)             # <<<<<<<<<<<<<<
     *
     *     def get_numeric_data(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_data); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     2612:

     2613:     def get_numeric_data(self, **kwargs):

    /* "pandas/internals.pyx":2613
     *         return self.get_data(**kwargs)
     *
     *     def get_numeric_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_numeric'] = True
     *         return self.get_data(**kwargs)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_99get_numeric_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_99get_numeric_data = {__Pyx_NAMESTR("get_numeric_data"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_99get_numeric_data, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_99get_numeric_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_numeric_data (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "get_numeric_data") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2613; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_numeric_data", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2613; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_numeric_data", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_98get_numeric_data(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_98get_numeric_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_numeric_data", 0);

      /* "pandas/internals.pyx":2613
     *         return self.get_data(**kwargs)
     *
     *     def get_numeric_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_numeric'] = True
     *         return self.get_data(**kwargs)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_numeric_data", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2613
     *         return self.get_data(**kwargs)
     *
     *     def get_numeric_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_numeric'] = True
     *         return self.get_data(**kwargs)
     */
      __pyx_tuple__579 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__579)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__579);
      __Pyx_GIVEREF(__pyx_tuple__579);

      /* "pandas/internals.pyx":2613
     *         return self.get_data(**kwargs)
     *
     *     def get_numeric_data(self, **kwargs):             # <<<<<<<<<<<<<<
     *         kwargs['is_numeric'] = True
     *         return self.get_data(**kwargs)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_99get_numeric_data, 0, __pyx_n_s_BlockManager_get_numeric_data, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__580)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_numeric_data, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__580 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__579, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_numeric_data, 2613, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__580)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2613; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2614:         kwargs['is_numeric'] = True

      /* "pandas/internals.pyx":2614
     *
     *     def get_numeric_data(self, **kwargs):
     *         kwargs['is_numeric'] = True             # <<<<<<<<<<<<<<
     *         return self.get_data(**kwargs)
     *
     */
      if (unlikely(PyDict_SetItem(__pyx_v_kwargs, __pyx_n_s_is_numeric, Py_True) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2614; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2615:         return self.get_data(**kwargs)

      /* "pandas/internals.pyx":2615
     *     def get_numeric_data(self, **kwargs):
     *         kwargs['is_numeric'] = True
     *         return self.get_data(**kwargs)             # <<<<<<<<<<<<<<
     *
     *     def get_data(self, copy=False, columns=None, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_data); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     2616:

     2617:     def get_data(self, copy=False, columns=None, **kwargs):

    /* "pandas/internals.pyx":2617
     *         return self.get_data(**kwargs)
     *
     *     def get_data(self, copy=False, columns=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         Parameters
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_101get_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_100get_data[] = "\n        Parameters\n        ----------\n        copy : boolean, default False\n            Whether to copy the blocks\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_101get_data = {__Pyx_NAMESTR("get_data"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_101get_data, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_100get_data)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_101get_data(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_columns = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_data (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_copy,&__pyx_n_s_columns,0};
        PyObject* values[3] = {0,0,0};
        values[1] = ((PyObject *)((PyObject *)Py_False));
        values[2] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_columns);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "get_data") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2617; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_copy = values[1];
        __pyx_v_columns = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_data", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2617; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_data", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_100get_data(__pyx_self, __pyx_v_self, __pyx_v_copy, __pyx_v_columns, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_100get_data(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_copy, PyObject *__pyx_v_columns, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_data", 0);

      /* "pandas/internals.pyx":2617
     *         return self.get_data(**kwargs)
     *
     *     def get_data(self, copy=False, columns=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         Parameters
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_data", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2617
     *         return self.get_data(**kwargs)
     *
     *     def get_data(self, copy=False, columns=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         Parameters
     */
      __pyx_tuple__581 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_copy, __pyx_n_s_columns, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_blocks); if (unlikely(!__pyx_tuple__581)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__581);
      __Pyx_GIVEREF(__pyx_tuple__581);
      __pyx_codeobj__582 = (PyObject*)__Pyx_PyCode_New(3, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__581, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_data, 2617, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__582)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2617
     *         return self.get_data(**kwargs)
     *
     *     def get_data(self, copy=False, columns=None, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         Parameters
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_101get_data, 0, __pyx_n_s_BlockManager_get_data, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__582)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__583);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_data, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__583 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__583)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2617; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__583);
      __Pyx_GIVEREF(__pyx_tuple__583);

     2618:         """

     2619:         Parameters

     2620:         ----------

     2621:         copy : boolean, default False

     2622:             Whether to copy the blocks

     2623:         """

     2624:         blocks = self.get_block_map(

      /* "pandas/internals.pyx":2624
     *             Whether to copy the blocks
     *         """
     *         blocks = self.get_block_map(             # <<<<<<<<<<<<<<
     *             typ='list', copy=copy, columns=columns, **kwargs)
     *         if len(blocks) == 0:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_block_map); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);

      /* "pandas/internals.pyx":2624
     *             Whether to copy the blocks
     *         """
     *         blocks = self.get_block_map(             # <<<<<<<<<<<<<<
     *             typ='list', copy=copy, columns=columns, **kwargs)
     *         if len(blocks) == 0:
     */
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_blocks = __pyx_t_3;
      __pyx_t_3 = 0;

     2625:             typ='list', copy=copy, columns=columns, **kwargs)

      /* "pandas/internals.pyx":2625
     *         """
     *         blocks = self.get_block_map(
     *             typ='list', copy=copy, columns=columns, **kwargs)             # <<<<<<<<<<<<<<
     *         if len(blocks) == 0:
     *             return self.make_empty()
     */
      __pyx_t_2 = PyDict_Copy(__pyx_v_kwargs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (unlikely(PyDict_GetItem(__pyx_t_2, __pyx_n_s_typ))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_typ); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_typ, __pyx_n_s_list) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(PyDict_GetItem(__pyx_t_2, __pyx_n_s_copy))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_copy); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(PyDict_GetItem(__pyx_t_2, __pyx_n_s_columns))) {
        __Pyx_RaiseDoubleKeywordsError("function", __pyx_n_s_columns); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_columns, __pyx_v_columns) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2626:         if len(blocks) == 0:

      /* "pandas/internals.pyx":2626
     *         blocks = self.get_block_map(
     *             typ='list', copy=copy, columns=columns, **kwargs)
     *         if len(blocks) == 0:             # <<<<<<<<<<<<<<
     *             return self.make_empty()
     *
     */
      __pyx_t_4 = PyObject_Length(__pyx_v_blocks); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = ((__pyx_t_4 == 0) != 0);
      if (__pyx_t_5) {

     2627:             return self.make_empty()

        /* "pandas/internals.pyx":2627
     *             typ='list', copy=copy, columns=columns, **kwargs)
     *         if len(blocks) == 0:
     *             return self.make_empty()             # <<<<<<<<<<<<<<
     *
     *         return self.combine(blocks)
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_empty); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }

     2628:

     2629:         return self.combine(blocks)

      /* "pandas/internals.pyx":2629
     *             return self.make_empty()
     *
     *         return self.combine(blocks)             # <<<<<<<<<<<<<<
     *
     *     def combine(self, blocks):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_combine); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2629; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2629; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_blocks);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_blocks);
      __Pyx_GIVEREF(__pyx_v_blocks);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2629; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2630:

     2631:     def combine(self, blocks):

    /* "pandas/internals.pyx":2631
     *         return self.combine(blocks)
     *
     *     def combine(self, blocks):             # <<<<<<<<<<<<<<
     *         """ return a new manager with the blocks """
     *         indexer = np.sort(np.concatenate([b.ref_locs for b in blocks]))
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_103combine(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_102combine[] = " return a new manager with the blocks ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_103combine = {__Pyx_NAMESTR("combine"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_103combine, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_102combine)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_103combine(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("combine (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_blocks,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("combine", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2631; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "combine") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2631; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_blocks = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("combine", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2631; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.combine", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_102combine(__pyx_self, __pyx_v_self, __pyx_v_blocks);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_102combine(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_blocks) {
      PyObject *__pyx_v_indexer = NULL;
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("combine", 0);

      /* "pandas/internals.pyx":2631
     *         return self.combine(blocks)
     *
     *     def combine(self, blocks):             # <<<<<<<<<<<<<<
     *         """ return a new manager with the blocks """
     *         indexer = np.sort(np.concatenate([b.ref_locs for b in blocks]))
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager.combine", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2631
     *         return self.combine(blocks)
     *
     *     def combine(self, blocks):             # <<<<<<<<<<<<<<
     *         """ return a new manager with the blocks """
     *         indexer = np.sort(np.concatenate([b.ref_locs for b in blocks]))
     */
      __pyx_tuple__584 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_blocks, __pyx_n_s_indexer, __pyx_n_s_new_items, __pyx_n_s_new_blocks, __pyx_n_s_b, __pyx_n_s_new_axes); if (unlikely(!__pyx_tuple__584)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__584);
      __Pyx_GIVEREF(__pyx_tuple__584);

      /* "pandas/internals.pyx":2631
     *         return self.combine(blocks)
     *
     *     def combine(self, blocks):             # <<<<<<<<<<<<<<
     *         """ return a new manager with the blocks """
     *         indexer = np.sort(np.concatenate([b.ref_locs for b in blocks]))
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_103combine, 0, __pyx_n_s_BlockManager_combine, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__585)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_combine, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__585 = (PyObject*)__Pyx_PyCode_New(2, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__584, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_combine, 2631, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__585)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2632:         """ return a new manager with the blocks """

     2633:         indexer = np.sort(np.concatenate([b.ref_locs for b in blocks]))

      /* "pandas/internals.pyx":2633
     *     def combine(self, blocks):
     *         """ return a new manager with the blocks """
     *         indexer = np.sort(np.concatenate([b.ref_locs for b in blocks]))             # <<<<<<<<<<<<<<
     *         new_items = self.items.take(indexer)
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_sort); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_concatenate); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
        __pyx_t_4 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_7 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_7 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_7)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_7);
        }
        __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_7);
        __pyx_t_7 = 0;
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ref_locs_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_7))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2633; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_indexer = __pyx_t_1;
      __pyx_t_1 = 0;

     2634:         new_items = self.items.take(indexer)

      /* "pandas/internals.pyx":2634
     *         """ return a new manager with the blocks """
     *         indexer = np.sort(np.concatenate([b.ref_locs for b in blocks]))
     *         new_items = self.items.take(indexer)             # <<<<<<<<<<<<<<
     *
     *         new_blocks = []
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_take); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_2 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_new_items = __pyx_t_2;
      __pyx_t_2 = 0;

     2635:

     2636:         new_blocks = []

      /* "pandas/internals.pyx":2636
     *         new_items = self.items.take(indexer)
     *
     *         new_blocks = []             # <<<<<<<<<<<<<<
     *         for b in blocks:
     *             b = b.copy(deep=False)
     */
      __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     2637:         for b in blocks:

      /* "pandas/internals.pyx":2637
     *
     *         new_blocks = []
     *         for b in blocks:             # <<<<<<<<<<<<<<
     *             b = b.copy(deep=False)
     *             b.ref_items = new_items
     */
      if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
        __pyx_t_2 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_2); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_6 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_6(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_1);
        __pyx_t_1 = 0;

     2638:             b = b.copy(deep=False)

        /* "pandas/internals.pyx":2638
     *         new_blocks = []
     *         for b in blocks:
     *             b = b.copy(deep=False)             # <<<<<<<<<<<<<<
     *             b.ref_items = new_items
     *             new_blocks.append(b)
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_copy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_deep, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2638; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_b, __pyx_t_3);
        __pyx_t_3 = 0;

     2639:             b.ref_items = new_items

        /* "pandas/internals.pyx":2639
     *         for b in blocks:
     *             b = b.copy(deep=False)
     *             b.ref_items = new_items             # <<<<<<<<<<<<<<
     *             new_blocks.append(b)
     *         new_axes = list(self.axes)
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_b, __pyx_n_s_ref_items, __pyx_v_new_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2640:             new_blocks.append(b)

        /* "pandas/internals.pyx":2640
     *             b = b.copy(deep=False)
     *             b.ref_items = new_items
     *             new_blocks.append(b)             # <<<<<<<<<<<<<<
     *         new_axes = list(self.axes)
     *         new_axes[0] = new_items
     */
        __pyx_t_8 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_b); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2641:         new_axes = list(self.axes)

      /* "pandas/internals.pyx":2641
     *             b.ref_items = new_items
     *             new_blocks.append(b)
     *         new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *         new_axes[0] = new_items
     *         return self.__class__(new_blocks, new_axes, do_integrity_check=False)
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2641; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2641; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2641; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     2642:         new_axes[0] = new_items

      /* "pandas/internals.pyx":2642
     *             new_blocks.append(b)
     *         new_axes = list(self.axes)
     *         new_axes[0] = new_items             # <<<<<<<<<<<<<<
     *         return self.__class__(new_blocks, new_axes, do_integrity_check=False)
     *
     */
      if (unlikely(__Pyx_SetItemInt(__pyx_v_new_axes, 0, __pyx_v_new_items, long, 1, __Pyx_PyInt_From_long, 1, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2642; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2643:         return self.__class__(new_blocks, new_axes, do_integrity_check=False)

      /* "pandas/internals.pyx":2643
     *         new_axes = list(self.axes)
     *         new_axes[0] = new_items
     *         return self.__class__(new_blocks, new_axes, do_integrity_check=False)             # <<<<<<<<<<<<<<
     *
     *     def get_slice(self, slobj, axis=0, raise_on_error=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_blocks);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_blocks);
      __Pyx_GIVEREF(__pyx_v_new_blocks);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_do_integrity_check, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2644:

     2645:     def get_slice(self, slobj, axis=0, raise_on_error=False):

    /* "pandas/internals.pyx":2645
     *         return self.__class__(new_blocks, new_axes, do_integrity_check=False)
     *
     *     def get_slice(self, slobj, axis=0, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         new_axes = list(self.axes)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_105get_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_105get_slice = {__Pyx_NAMESTR("get_slice"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_105get_slice, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_105get_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slobj = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_raise_on_error = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_slice (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slobj,&__pyx_n_s_axis,&__pyx_n_s_raise_on_error,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)__pyx_int_0));
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slobj)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("get_slice", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_raise_on_error);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_slice") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_slobj = values[1];
        __pyx_v_axis = values[2];
        __pyx_v_raise_on_error = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_slice", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_104get_slice(__pyx_self, __pyx_v_self, __pyx_v_slobj, __pyx_v_axis, __pyx_v_raise_on_error);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_104get_slice(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slobj, PyObject *__pyx_v_axis, PyObject *__pyx_v_raise_on_error) {
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_v_newb = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_bm = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_slice", 0);

      /* "pandas/internals.pyx":2645
     *         return self.__class__(new_blocks, new_axes, do_integrity_check=False)
     *
     *     def get_slice(self, slobj, axis=0, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         new_axes = list(self.axes)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_bm);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2645
     *         return self.__class__(new_blocks, new_axes, do_integrity_check=False)
     *
     *     def get_slice(self, slobj, axis=0, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         new_axes = list(self.axes)
     *
     */
      __pyx_tuple__586 = PyTuple_Pack(11, __pyx_n_s_self, __pyx_n_s_slobj, __pyx_n_s_axis, __pyx_n_s_raise_on_error, __pyx_n_s_new_axes, __pyx_n_s_new_items, __pyx_n_s_blk, __pyx_n_s_ref_locs_2, __pyx_n_s_newb, __pyx_n_s_new_blocks, __pyx_n_s_bm); if (unlikely(!__pyx_tuple__586)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__586);
      __Pyx_GIVEREF(__pyx_tuple__586);
      __pyx_codeobj__587 = (PyObject*)__Pyx_PyCode_New(4, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__586, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_slice, 2645, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__587)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2645
     *         return self.__class__(new_blocks, new_axes, do_integrity_check=False)
     *
     *     def get_slice(self, slobj, axis=0, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         new_axes = list(self.axes)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_105get_slice, 0, __pyx_n_s_BlockManager_get_slice, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__587)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__588);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_slice, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__588 = PyTuple_Pack(2, ((PyObject *)__pyx_int_0), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__588)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2645; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__588);
      __Pyx_GIVEREF(__pyx_tuple__588);

     2646:         new_axes = list(self.axes)

      /* "pandas/internals.pyx":2646
     *
     *     def get_slice(self, slobj, axis=0, raise_on_error=False):
     *         new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *
     *         if raise_on_error:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2646; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2646; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2646; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     2647:

     2648:         if raise_on_error:

      /* "pandas/internals.pyx":2648
     *         new_axes = list(self.axes)
     *
     *         if raise_on_error:             # <<<<<<<<<<<<<<
     *             _check_slice_bounds(slobj, new_axes[axis])
     *
     */
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_raise_on_error); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2648; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_3) {

     2649:             _check_slice_bounds(slobj, new_axes[axis])

        /* "pandas/internals.pyx":2649
     *
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, new_axes[axis])             # <<<<<<<<<<<<<<
     *
     *         new_axes[axis] = new_axes[axis][slobj]
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_check_slice_bounds); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyObject_GetItem(__pyx_v_new_axes, __pyx_v_axis); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2649; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_slobj);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_slobj);
        __Pyx_GIVEREF(__pyx_v_slobj);
        PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2650:

     2651:         new_axes[axis] = new_axes[axis][slobj]

      /* "pandas/internals.pyx":2651
     *             _check_slice_bounds(slobj, new_axes[axis])
     *
     *         new_axes[axis] = new_axes[axis][slobj]             # <<<<<<<<<<<<<<
     *
     *         if axis == 0:
     */
      __pyx_t_2 = PyObject_GetItem(__pyx_v_new_axes, __pyx_v_axis); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2651; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = PyObject_GetItem(__pyx_t_2, __pyx_v_slobj); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2651; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(PyObject_SetItem(__pyx_v_new_axes, __pyx_v_axis, __pyx_t_4) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2651; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     2652:

     2653:         if axis == 0:

      /* "pandas/internals.pyx":2653
     *         new_axes[axis] = new_axes[axis][slobj]
     *
     *         if axis == 0:             # <<<<<<<<<<<<<<
     *             new_items = new_axes[0]
     *
     */
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2653; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2653; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_3) {

     2654:             new_items = new_axes[0]

        /* "pandas/internals.pyx":2654
     *
     *         if axis == 0:
     *             new_items = new_axes[0]             # <<<<<<<<<<<<<<
     *
     *             # we want to preserver the view of a single-block
     */
        __pyx_t_4 = __Pyx_GetItemInt_List(__pyx_v_new_axes, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2654; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_v_new_items = __pyx_t_4;
        __pyx_t_4 = 0;

     2655:

     2656:             # we want to preserver the view of a single-block

     2657:             if len(self.blocks) == 1:

        /* "pandas/internals.pyx":2657
     *
     *             # we want to preserver the view of a single-block
     *             if len(self.blocks) == 1:             # <<<<<<<<<<<<<<
     *
     *                 blk = self.blocks[0]
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2657; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2657; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_3 = ((__pyx_t_5 == 1) != 0);
        if (__pyx_t_3) {

     2658:

     2659:                 blk = self.blocks[0]

          /* "pandas/internals.pyx":2659
     *             if len(self.blocks) == 1:
     *
     *                 blk = self.blocks[0]             # <<<<<<<<<<<<<<
     *                 ref_locs = blk.take_ref_locs(slobj)
     *                 newb = make_block(blk._slice(slobj), new_items, new_items,
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2659; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_v_blk = __pyx_t_2;
          __pyx_t_2 = 0;

     2660:                 ref_locs = blk.take_ref_locs(slobj)

          /* "pandas/internals.pyx":2660
     *
     *                 blk = self.blocks[0]
     *                 ref_locs = blk.take_ref_locs(slobj)             # <<<<<<<<<<<<<<
     *                 newb = make_block(blk._slice(slobj), new_items, new_items,
     *                                   klass=blk.__class__, fastpath=True,
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_take_ref_locs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_slobj);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_slobj);
          __Pyx_GIVEREF(__pyx_v_slobj);
          __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2660; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_v_ref_locs = __pyx_t_1;
          __pyx_t_1 = 0;

     2661:                 newb = make_block(blk._slice(slobj), new_items, new_items,

          /* "pandas/internals.pyx":2661
     *                 blk = self.blocks[0]
     *                 ref_locs = blk.take_ref_locs(slobj)
     *                 newb = make_block(blk._slice(slobj), new_items, new_items,             # <<<<<<<<<<<<<<
     *                                   klass=blk.__class__, fastpath=True,
     *                                   placement=ref_locs)
     */
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_slice); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_slobj);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_slobj);
          __Pyx_GIVEREF(__pyx_v_slobj);
          __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_2, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);
          __pyx_t_6 = 0;
          __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);

          /* "pandas/internals.pyx":2661
     *                 blk = self.blocks[0]
     *                 ref_locs = blk.take_ref_locs(slobj)
     *                 newb = make_block(blk._slice(slobj), new_items, new_items,             # <<<<<<<<<<<<<<
     *                                   klass=blk.__class__, fastpath=True,
     *                                   placement=ref_locs)
     */
          __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_newb = __pyx_t_4;
          __pyx_t_4 = 0;

     2662:                                   klass=blk.__class__, fastpath=True,

          /* "pandas/internals.pyx":2662
     *                 ref_locs = blk.take_ref_locs(slobj)
     *                 newb = make_block(blk._slice(slobj), new_items, new_items,
     *                                   klass=blk.__class__, fastpath=True,             # <<<<<<<<<<<<<<
     *                                   placement=ref_locs)
     *
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_class); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2662; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_klass, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2663:                                   placement=ref_locs)

          /* "pandas/internals.pyx":2663
     *                 newb = make_block(blk._slice(slobj), new_items, new_items,
     *                                   klass=blk.__class__, fastpath=True,
     *                                   placement=ref_locs)             # <<<<<<<<<<<<<<
     *
     *                 new_blocks = [newb]
     */
          if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_placement, __pyx_v_ref_locs) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2664:

     2665:                 new_blocks = [newb]

          /* "pandas/internals.pyx":2665
     *                                   placement=ref_locs)
     *
     *                 new_blocks = [newb]             # <<<<<<<<<<<<<<
     *             else:
     *                 return self.reindex_items(
     */
          __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2665; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_newb);
          PyList_SET_ITEM(__pyx_t_4, 0, __pyx_v_newb);
          __Pyx_GIVEREF(__pyx_v_newb);
          __pyx_v_new_blocks = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L5;
        }
        /*else*/ {

     2666:             else:

     2667:                 return self.reindex_items(

          /* "pandas/internals.pyx":2667
     *                 new_blocks = [newb]
     *             else:
     *                 return self.reindex_items(             # <<<<<<<<<<<<<<
     *                     new_items, indexer=np.arange(len(self.items))[slobj])
     *         else:
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);

          /* "pandas/internals.pyx":2668
     *             else:
     *                 return self.reindex_items(
     *                     new_items, indexer=np.arange(len(self.items))[slobj])             # <<<<<<<<<<<<<<
     *         else:
     *             new_blocks = self._slice_blocks(slobj, axis)
     */
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);

          /* "pandas/internals.pyx":2667
     *                 new_blocks = [newb]
     *             else:
     *                 return self.reindex_items(             # <<<<<<<<<<<<<<
     *                     new_items, indexer=np.arange(len(self.items))[slobj])
     *         else:
     */
          __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);

          /* "pandas/internals.pyx":2667
     *                 new_blocks = [newb]
     *             else:
     *                 return self.reindex_items(             # <<<<<<<<<<<<<<
     *                     new_items, indexer=np.arange(len(self.items))[slobj])
     *         else:
     */
          __pyx_t_8 = PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_r = __pyx_t_8;
          __pyx_t_8 = 0;
          goto __pyx_L0;
        }
        __pyx_L5:;
        goto __pyx_L4;
      }
      /*else*/ {

     2668:                     new_items, indexer=np.arange(len(self.items))[slobj])

          /* "pandas/internals.pyx":2668
     *             else:
     *                 return self.reindex_items(
     *                     new_items, indexer=np.arange(len(self.items))[slobj])             # <<<<<<<<<<<<<<
     *         else:
     *             new_blocks = self._slice_blocks(slobj, axis)
     */
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_arange); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_7, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_8 = PyObject_GetItem(__pyx_t_1, __pyx_v_slobj); if (unlikely(__pyx_t_8 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2668; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_indexer, __pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

     2669:         else:

     2670:             new_blocks = self._slice_blocks(slobj, axis)

        /* "pandas/internals.pyx":2670
     *                     new_items, indexer=np.arange(len(self.items))[slobj])
     *         else:
     *             new_blocks = self._slice_blocks(slobj, axis)             # <<<<<<<<<<<<<<
     *
     *         bm = self.__class__(new_blocks, new_axes, do_integrity_check=False)
     */
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_slice_blocks); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_slobj);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_slobj);
        __Pyx_GIVEREF(__pyx_v_slobj);
        __Pyx_INCREF(__pyx_v_axis);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_axis);
        __Pyx_GIVEREF(__pyx_v_axis);
        __pyx_t_6 = PyObject_Call(__pyx_t_8, __pyx_t_2, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_new_blocks = __pyx_t_6;
        __pyx_t_6 = 0;
      }
      __pyx_L4:;

     2671:

     2672:         bm = self.__class__(new_blocks, new_axes, do_integrity_check=False)

      /* "pandas/internals.pyx":2672
     *             new_blocks = self._slice_blocks(slobj, axis)
     *
     *         bm = self.__class__(new_blocks, new_axes, do_integrity_check=False)             # <<<<<<<<<<<<<<
     *         bm._consolidate_inplace()
     *         return bm
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2672; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2672; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_blocks);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_blocks);
      __Pyx_GIVEREF(__pyx_v_new_blocks);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2672; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_do_integrity_check, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2672; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_2, __pyx_t_8); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2672; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      __pyx_v_bm = __pyx_t_4;
      __pyx_t_4 = 0;

     2673:         bm._consolidate_inplace()

      /* "pandas/internals.pyx":2673
     *
     *         bm = self.__class__(new_blocks, new_axes, do_integrity_check=False)
     *         bm._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return bm
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_bm, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2673; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_8 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2673; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

     2674:         return bm

      /* "pandas/internals.pyx":2674
     *         bm = self.__class__(new_blocks, new_axes, do_integrity_check=False)
     *         bm._consolidate_inplace()
     *         return bm             # <<<<<<<<<<<<<<
     *
     *     def _slice_blocks(self, slobj, axis):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_bm);
      __pyx_r = __pyx_v_bm;
      goto __pyx_L0;

     2675:

     2676:     def _slice_blocks(self, slobj, axis):

    /* "pandas/internals.pyx":2676
     *         return bm
     *
     *     def _slice_blocks(self, slobj, axis):             # <<<<<<<<<<<<<<
     *         new_blocks = []
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_107_slice_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_107_slice_blocks = {__Pyx_NAMESTR("_slice_blocks"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_107_slice_blocks, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_107_slice_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slobj = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_slice_blocks (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slobj,&__pyx_n_s_axis,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slobj)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_slice_blocks", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_slice_blocks", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_slice_blocks") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_slobj = values[1];
        __pyx_v_axis = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_slice_blocks", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._slice_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_106_slice_blocks(__pyx_self, __pyx_v_self, __pyx_v_slobj, __pyx_v_axis);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_106_slice_blocks(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slobj, PyObject *__pyx_v_axis) {
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_slicer = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_newb = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_slice_blocks", 0);

      /* "pandas/internals.pyx":2676
     *         return bm
     *
     *     def _slice_blocks(self, slobj, axis):             # <<<<<<<<<<<<<<
     *         new_blocks = []
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.BlockManager._slice_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_slicer);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2676
     *         return bm
     *
     *     def _slice_blocks(self, slobj, axis):             # <<<<<<<<<<<<<<
     *         new_blocks = []
     *
     */
      __pyx_tuple__589 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_slobj, __pyx_n_s_axis, __pyx_n_s_new_blocks, __pyx_n_s_slicer, __pyx_n_s_block, __pyx_n_s_newb, __pyx_n_s__10); if (unlikely(!__pyx_tuple__589)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__589);
      __Pyx_GIVEREF(__pyx_tuple__589);

      /* "pandas/internals.pyx":2676
     *         return bm
     *
     *     def _slice_blocks(self, slobj, axis):             # <<<<<<<<<<<<<<
     *         new_blocks = []
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_107_slice_blocks, 0, __pyx_n_s_BlockManager__slice_blocks, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__590)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_slice_blocks, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__590 = (PyObject*)__Pyx_PyCode_New(3, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__589, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_slice_blocks, 2676, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__590)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2676; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2677:         new_blocks = []

      /* "pandas/internals.pyx":2677
     *
     *     def _slice_blocks(self, slobj, axis):
     *         new_blocks = []             # <<<<<<<<<<<<<<
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2677; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     2678:

     2679:         slicer = [slice(None, None) for _ in range(self.ndim)]

      /* "pandas/internals.pyx":2679
     *         new_blocks = []
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]             # <<<<<<<<<<<<<<
     *         slicer[axis] = slobj
     *         slicer = tuple(slicer)
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_range); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
        __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(((PyObject *)((PyObject*)(&PySlice_Type))), __pyx_tuple__80, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_3))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_slicer = __pyx_t_1;
      __pyx_t_1 = 0;

      /* "pandas/internals.pyx":2679
     *         new_blocks = []
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]             # <<<<<<<<<<<<<<
     *         slicer[axis] = slobj
     *         slicer = tuple(slicer)
     */
      __pyx_tuple__80 = PyTuple_Pack(2, Py_None, Py_None); if (unlikely(!__pyx_tuple__80)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2679; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__80);
      __Pyx_GIVEREF(__pyx_tuple__80);

     2680:         slicer[axis] = slobj

      /* "pandas/internals.pyx":2680
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]
     *         slicer[axis] = slobj             # <<<<<<<<<<<<<<
     *         slicer = tuple(slicer)
     *
     */
      if (unlikely(PyObject_SetItem(__pyx_v_slicer, __pyx_v_axis, __pyx_v_slobj) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2681:         slicer = tuple(slicer)

      /* "pandas/internals.pyx":2681
     *         slicer = [slice(None, None) for _ in range(self.ndim)]
     *         slicer[axis] = slobj
     *         slicer = tuple(slicer)             # <<<<<<<<<<<<<<
     *
     *         for block in self.blocks:
     */
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2681; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_slicer);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_slicer);
      __Pyx_GIVEREF(__pyx_v_slicer);
      __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2681; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_slicer, __pyx_t_4);
      __pyx_t_4 = 0;

     2682:

     2683:         for block in self.blocks:

      /* "pandas/internals.pyx":2683
     *         slicer = tuple(slicer)
     *
     *         for block in self.blocks:             # <<<<<<<<<<<<<<
     *             newb = make_block(block._slice(slicer),
     *                               block.items,
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) {
        __pyx_t_1 = __pyx_t_4; __Pyx_INCREF(__pyx_t_1); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_4); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_4); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_6(__pyx_t_1);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_4);
        __pyx_t_4 = 0;

     2684:             newb = make_block(block._slice(slicer),

        /* "pandas/internals.pyx":2684
     *
     *         for block in self.blocks:
     *             newb = make_block(block._slice(slicer),             # <<<<<<<<<<<<<<
     *                               block.items,
     *                               block.ref_items,
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_slice); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_slicer);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_slicer);
        __Pyx_GIVEREF(__pyx_v_slicer);
        __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

        /* "pandas/internals.pyx":2684
     *
     *         for block in self.blocks:
     *             newb = make_block(block._slice(slicer),             # <<<<<<<<<<<<<<
     *                               block.items,
     *                               block.ref_items,
     */
        __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7);
        __Pyx_GIVEREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_7 = 0;
        __pyx_t_2 = 0;
        __pyx_t_3 = 0;
        __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);

        /* "pandas/internals.pyx":2684
     *
     *         for block in self.blocks:
     *             newb = make_block(block._slice(slicer),             # <<<<<<<<<<<<<<
     *                               block.items,
     *                               block.ref_items,
     */
        __pyx_t_2 = PyObject_Call(__pyx_t_4, __pyx_t_8, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF_SET(__pyx_v_newb, __pyx_t_2);
        __pyx_t_2 = 0;

     2685:                               block.items,

        /* "pandas/internals.pyx":2685
     *         for block in self.blocks:
     *             newb = make_block(block._slice(slicer),
     *                               block.items,             # <<<<<<<<<<<<<<
     *                               block.ref_items,
     *                               klass=block.__class__,
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2685; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

     2686:                               block.ref_items,

        /* "pandas/internals.pyx":2686
     *             newb = make_block(block._slice(slicer),
     *                               block.items,
     *                               block.ref_items,             # <<<<<<<<<<<<<<
     *                               klass=block.__class__,
     *                               fastpath=True,
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2686; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);

     2687:                               klass=block.__class__,

        /* "pandas/internals.pyx":2687
     *                               block.items,
     *                               block.ref_items,
     *                               klass=block.__class__,             # <<<<<<<<<<<<<<
     *                               fastpath=True,
     *                               placement=block._ref_locs)
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_class); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_klass, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2688:                               fastpath=True,

        /* "pandas/internals.pyx":2688
     *                               block.ref_items,
     *                               klass=block.__class__,
     *                               fastpath=True,             # <<<<<<<<<<<<<<
     *                               placement=block._ref_locs)
     *             newb.set_ref_locs(block._ref_locs)
     */
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2689:                               placement=block._ref_locs)

        /* "pandas/internals.pyx":2689
     *                               klass=block.__class__,
     *                               fastpath=True,
     *                               placement=block._ref_locs)             # <<<<<<<<<<<<<<
     *             newb.set_ref_locs(block._ref_locs)
     *             new_blocks.append(newb)
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2689; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_placement, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2684; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2690:             newb.set_ref_locs(block._ref_locs)

        /* "pandas/internals.pyx":2690
     *                               fastpath=True,
     *                               placement=block._ref_locs)
     *             newb.set_ref_locs(block._ref_locs)             # <<<<<<<<<<<<<<
     *             new_blocks.append(newb)
     *         return new_blocks
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_newb, __pyx_n_s_set_ref_locs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_8, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2691:             new_blocks.append(newb)

        /* "pandas/internals.pyx":2691
     *                               placement=block._ref_locs)
     *             newb.set_ref_locs(block._ref_locs)
     *             new_blocks.append(newb)             # <<<<<<<<<<<<<<
     *         return new_blocks
     *
     */
        __pyx_t_9 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_newb); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2691; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2692:         return new_blocks

      /* "pandas/internals.pyx":2692
     *             newb.set_ref_locs(block._ref_locs)
     *             new_blocks.append(newb)
     *         return new_blocks             # <<<<<<<<<<<<<<
     *
     *     def get_series_dict(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_new_blocks);
      __pyx_r = __pyx_v_new_blocks;
      goto __pyx_L0;

     2693:

     2694:     def get_series_dict(self):

    /* "pandas/internals.pyx":2694
     *         return new_blocks
     *
     *     def get_series_dict(self):             # <<<<<<<<<<<<<<
     *         # For DataFrame
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_109get_series_dict(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_109get_series_dict = {__Pyx_NAMESTR("get_series_dict"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_109get_series_dict, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_109get_series_dict(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_series_dict (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_108get_series_dict(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_108get_series_dict(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_series_dict", 0);

      /* "pandas/internals.pyx":2694
     *         return new_blocks
     *
     *     def get_series_dict(self):             # <<<<<<<<<<<<<<
     *         # For DataFrame
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_series_dict", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2694
     *         return new_blocks
     *
     *     def get_series_dict(self):             # <<<<<<<<<<<<<<
     *         # For DataFrame
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     */
      __pyx_tuple__591 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__591)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2694; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__591);
      __Pyx_GIVEREF(__pyx_tuple__591);

      /* "pandas/internals.pyx":2694
     *         return new_blocks
     *
     *     def get_series_dict(self):             # <<<<<<<<<<<<<<
     *         # For DataFrame
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_109get_series_dict, 0, __pyx_n_s_BlockManager_get_series_dict, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__592)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2694; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_series_dict, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2694; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__592 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__591, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_series_dict, 2694, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__592)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2694; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2695:         # For DataFrame

     2696:         return _blocks_to_series_dict(self.blocks, self.axes[1])

      /* "pandas/internals.pyx":2696
     *     def get_series_dict(self):
     *         # For DataFrame
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])             # <<<<<<<<<<<<<<
     *
     *     def __contains__(self, item):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_blocks_to_series_dict); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_3, 1, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2696; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_2 = 0;
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     2697:

     2698:     def __contains__(self, item):

    /* "pandas/internals.pyx":2698
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_111__contains__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_111__contains__ = {__Pyx_NAMESTR("__contains__"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_111__contains__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_111__contains__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__contains__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__contains__", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2698; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__contains__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2698; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__contains__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2698; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.__contains__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_110__contains__(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_110__contains__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__contains__", 0);

      /* "pandas/internals.pyx":2698
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.__contains__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2698
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */
      __pyx_tuple__593 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_item); if (unlikely(!__pyx_tuple__593)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__593);
      __Pyx_GIVEREF(__pyx_tuple__593);

      /* "pandas/internals.pyx":2698
     *         return _blocks_to_series_dict(self.blocks, self.axes[1])
     *
     *     def __contains__(self, item):             # <<<<<<<<<<<<<<
     *         return item in self.items
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_111__contains__, 0, __pyx_n_s_BlockManager___contains, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__594)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_contains, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__594 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__593, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_contains, 2698, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__594)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2699:         return item in self.items

      /* "pandas/internals.pyx":2699
     *
     *     def __contains__(self, item):
     *         return item in self.items             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2699; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = (__Pyx_PySequence_Contains(__pyx_v_item, __pyx_t_1, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2699; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2699; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2700:

     2701:     @property

      /* "pandas/internals.pyx":2701
     *         return item in self.items
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def nblocks(self):
     *         return len(self.blocks)
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2701; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2701; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_nblocks, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2702:     def nblocks(self):

    /* "pandas/internals.pyx":2702
     *
     *     @property
     *     def nblocks(self):             # <<<<<<<<<<<<<<
     *         return len(self.blocks)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_113nblocks(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_113nblocks = {__Pyx_NAMESTR("nblocks"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_113nblocks, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_113nblocks(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("nblocks (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_112nblocks(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_112nblocks(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("nblocks", 0);

      /* "pandas/internals.pyx":2702
     *
     *     @property
     *     def nblocks(self):             # <<<<<<<<<<<<<<
     *         return len(self.blocks)
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.nblocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2702
     *
     *     @property
     *     def nblocks(self):             # <<<<<<<<<<<<<<
     *         return len(self.blocks)
     *
     */
      __pyx_tuple__595 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__595)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__595);
      __Pyx_GIVEREF(__pyx_tuple__595);

      /* "pandas/internals.pyx":2702
     *
     *     @property
     *     def nblocks(self):             # <<<<<<<<<<<<<<
     *         return len(self.blocks)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_113nblocks, 0, __pyx_n_s_BlockManager_nblocks, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__596)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__596 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__595, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_nblocks, 2702, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__596)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2703:         return len(self.blocks)

      /* "pandas/internals.pyx":2703
     *     @property
     *     def nblocks(self):
     *         return len(self.blocks)             # <<<<<<<<<<<<<<
     *
     *     def copy(self, deep=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2704:

     2705:     def copy(self, deep=True):

    /* "pandas/internals.pyx":2705
     *         return len(self.blocks)
     *
     *     def copy(self, deep=True):             # <<<<<<<<<<<<<<
     *         """
     *         Make deep or shallow copy of BlockManager
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_115copy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_114copy[] = "\n        Make deep or shallow copy of BlockManager\n\n        Parameters\n        ----------\n        deep : boolean, default True\n            If False, return shallow copy (do not copy data)\n\n        Returns\n        -------\n        copy : BlockManager\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_115copy = {__Pyx_NAMESTR("copy"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_115copy, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_114copy)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_115copy(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_deep = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("copy (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_deep,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_deep);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "copy") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2705; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_deep = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("copy", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2705; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_114copy(__pyx_self, __pyx_v_self, __pyx_v_deep);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_114copy(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_deep) {
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_v_ax = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("copy", 0);

      /* "pandas/internals.pyx":2705
     *         return len(self.blocks)
     *
     *     def copy(self, deep=True):             # <<<<<<<<<<<<<<
     *         """
     *         Make deep or shallow copy of BlockManager
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager.copy", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_ax);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2705
     *         return len(self.blocks)
     *
     *     def copy(self, deep=True):             # <<<<<<<<<<<<<<
     *         """
     *         Make deep or shallow copy of BlockManager
     */
      __pyx_tuple__597 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_deep, __pyx_n_s_new_axes, __pyx_n_s_ax); if (unlikely(!__pyx_tuple__597)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2705; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__597);
      __Pyx_GIVEREF(__pyx_tuple__597);
      __pyx_codeobj__598 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__597, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_copy, 2705, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__598)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2705; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2705
     *         return len(self.blocks)
     *
     *     def copy(self, deep=True):             # <<<<<<<<<<<<<<
     *         """
     *         Make deep or shallow copy of BlockManager
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_115copy, 0, __pyx_n_s_BlockManager_copy, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__598)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2705; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__599);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_copy, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2705; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__599 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__599)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2705; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__599);
      __Pyx_GIVEREF(__pyx_tuple__599);

     2706:         """

     2707:         Make deep or shallow copy of BlockManager

     2708:

     2709:         Parameters

     2710:         ----------

     2711:         deep : boolean, default True

     2712:             If False, return shallow copy (do not copy data)

     2713:

     2714:         Returns

     2715:         -------

     2716:         copy : BlockManager

     2717:         """

     2718:         if deep:

      /* "pandas/internals.pyx":2718
     *         copy : BlockManager
     *         """
     *         if deep:             # <<<<<<<<<<<<<<
     *             new_axes = [ax.view() for ax in self.axes]
     *         else:
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_deep); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     2719:             new_axes = [ax.view() for ax in self.axes]

        /* "pandas/internals.pyx":2719
     *         """
     *         if deep:
     *             new_axes = [ax.view() for ax in self.axes]             # <<<<<<<<<<<<<<
     *         else:
     *             new_axes = list(self.axes)
     */
        __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
          __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_3 = __pyx_t_6(__pyx_t_4);
            if (unlikely(!__pyx_t_3)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_3);
          }
          __Pyx_XDECREF_SET(__pyx_v_ax, __pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_ax, __pyx_n_s_view); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_7))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2719; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_new_axes = ((PyObject*)__pyx_t_2);
        __pyx_t_2 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     2720:         else:

     2721:             new_axes = list(self.axes)

        /* "pandas/internals.pyx":2721
     *             new_axes = [ax.view() for ax in self.axes]
     *         else:
     *             new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *         return self.apply('copy', axes=new_axes, deep=deep,
     *                           ref_items=new_axes[0], do_integrity_check=False)
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2721; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2721; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2721; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_new_axes = ((PyObject*)__pyx_t_2);
        __pyx_t_2 = 0;
      }
      __pyx_L3:;

     2722:         return self.apply('copy', axes=new_axes, deep=deep,

      /* "pandas/internals.pyx":2722
     *         else:
     *             new_axes = list(self.axes)
     *         return self.apply('copy', axes=new_axes, deep=deep,             # <<<<<<<<<<<<<<
     *                           ref_items=new_axes[0], do_integrity_check=False)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_axes, __pyx_v_new_axes) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_deep, __pyx_v_deep) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2722
     *         else:
     *             new_axes = list(self.axes)
     *         return self.apply('copy', axes=new_axes, deep=deep,             # <<<<<<<<<<<<<<
     *                           ref_items=new_axes[0], do_integrity_check=False)
     *
     */
      __pyx_t_7 = PyObject_Call(__pyx_t_2, __pyx_tuple__81, __pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_7;
      __pyx_t_7 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":2722
     *         else:
     *             new_axes = list(self.axes)
     *         return self.apply('copy', axes=new_axes, deep=deep,             # <<<<<<<<<<<<<<
     *                           ref_items=new_axes[0], do_integrity_check=False)
     *
     */
      __pyx_tuple__81 = PyTuple_Pack(1, __pyx_n_s_copy); if (unlikely(!__pyx_tuple__81)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__81);
      __Pyx_GIVEREF(__pyx_tuple__81);

     2723:                           ref_items=new_axes[0], do_integrity_check=False)

      /* "pandas/internals.pyx":2723
     *             new_axes = list(self.axes)
     *         return self.apply('copy', axes=new_axes, deep=deep,
     *                           ref_items=new_axes[0], do_integrity_check=False)             # <<<<<<<<<<<<<<
     *
     *     def as_matrix(self, items=None):
     */
      __pyx_t_7 = __Pyx_GetItemInt_List(__pyx_v_new_axes, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_7 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2723; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_ref_items, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_do_integrity_check, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2724:

     2725:     def as_matrix(self, items=None):

    /* "pandas/internals.pyx":2725
     *                           ref_items=new_axes[0], do_integrity_check=False)
     *
     *     def as_matrix(self, items=None):             # <<<<<<<<<<<<<<
     *         if len(self.blocks) == 0:
     *             mat = np.empty(self.shape, dtype=float)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_117as_matrix(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_117as_matrix = {__Pyx_NAMESTR("as_matrix"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_117as_matrix, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_117as_matrix(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("as_matrix (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_items,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "as_matrix") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2725; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_items = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("as_matrix", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2725; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.as_matrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_116as_matrix(__pyx_self, __pyx_v_self, __pyx_v_items);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_116as_matrix(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_items) {
      PyObject *__pyx_v_mat = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("as_matrix", 0);

      /* "pandas/internals.pyx":2725
     *                           ref_items=new_axes[0], do_integrity_check=False)
     *
     *     def as_matrix(self, items=None):             # <<<<<<<<<<<<<<
     *         if len(self.blocks) == 0:
     *             mat = np.empty(self.shape, dtype=float)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.BlockManager.as_matrix", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_mat);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2725
     *                           ref_items=new_axes[0], do_integrity_check=False)
     *
     *     def as_matrix(self, items=None):             # <<<<<<<<<<<<<<
     *         if len(self.blocks) == 0:
     *             mat = np.empty(self.shape, dtype=float)
     */
      __pyx_tuple__600 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_items, __pyx_n_s_mat, __pyx_n_s_blk); if (unlikely(!__pyx_tuple__600)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2725; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__600);
      __Pyx_GIVEREF(__pyx_tuple__600);
      __pyx_codeobj__601 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__600, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_as_matrix, 2725, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__601)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2725; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2725
     *                           ref_items=new_axes[0], do_integrity_check=False)
     *
     *     def as_matrix(self, items=None):             # <<<<<<<<<<<<<<
     *         if len(self.blocks) == 0:
     *             mat = np.empty(self.shape, dtype=float)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_117as_matrix, 0, __pyx_n_s_BlockManager_as_matrix, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__601)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2725; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__602);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_as_matrix, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2725; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__602 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__602)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2725; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__602);
      __Pyx_GIVEREF(__pyx_tuple__602);

     2726:         if len(self.blocks) == 0:

      /* "pandas/internals.pyx":2726
     *
     *     def as_matrix(self, items=None):
     *         if len(self.blocks) == 0:             # <<<<<<<<<<<<<<
     *             mat = np.empty(self.shape, dtype=float)
     *         elif len(self.blocks) == 1:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = ((__pyx_t_2 == 0) != 0);
      if (__pyx_t_3) {

     2727:             mat = np.empty(self.shape, dtype=float)

        /* "pandas/internals.pyx":2727
     *     def as_matrix(self, items=None):
     *         if len(self.blocks) == 0:
     *             mat = np.empty(self.shape, dtype=float)             # <<<<<<<<<<<<<<
     *         elif len(self.blocks) == 1:
     *             blk = self.blocks[0]
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, ((PyObject *)((PyObject*)(&PyFloat_Type)))) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_mat = __pyx_t_6;
        __pyx_t_6 = 0;
        goto __pyx_L3;
      }

     2728:         elif len(self.blocks) == 1:

      /* "pandas/internals.pyx":2728
     *         if len(self.blocks) == 0:
     *             mat = np.empty(self.shape, dtype=float)
     *         elif len(self.blocks) == 1:             # <<<<<<<<<<<<<<
     *             blk = self.blocks[0]
     *             if items is None or blk.items.equals(items):
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2728; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = PyObject_Length(__pyx_t_6); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2728; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_3 = ((__pyx_t_2 == 1) != 0);
      if (__pyx_t_3) {

     2729:             blk = self.blocks[0]

        /* "pandas/internals.pyx":2729
     *             mat = np.empty(self.shape, dtype=float)
     *         elif len(self.blocks) == 1:
     *             blk = self.blocks[0]             # <<<<<<<<<<<<<<
     *             if items is None or blk.items.equals(items):
     *                 # if not, then just call interleave per below
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_6, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2729; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_v_blk = __pyx_t_1;
        __pyx_t_1 = 0;

     2730:             if items is None or blk.items.equals(items):

        /* "pandas/internals.pyx":2730
     *         elif len(self.blocks) == 1:
     *             blk = self.blocks[0]
     *             if items is None or blk.items.equals(items):             # <<<<<<<<<<<<<<
     *                 # if not, then just call interleave per below
     *                 mat = blk.get_values()
     */
        __pyx_t_3 = (__pyx_v_items == Py_None);
        if (!__pyx_t_3) {
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_equals); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_items);
          __Pyx_GIVEREF(__pyx_v_items);
          __pyx_t_5 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_8 = __pyx_t_7;
        } else {
          __pyx_t_8 = __pyx_t_3;
        }
        if (__pyx_t_8) {

     2731:                 # if not, then just call interleave per below

     2732:                 mat = blk.get_values()

          /* "pandas/internals.pyx":2732
     *             if items is None or blk.items.equals(items):
     *                 # if not, then just call interleave per below
     *                 mat = blk.get_values()             # <<<<<<<<<<<<<<
     *             else:
     *                 mat = self.reindex_items(items).as_matrix()
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_get_values); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2732; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2732; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_v_mat = __pyx_t_1;
          __pyx_t_1 = 0;
          goto __pyx_L4;
        }
        /*else*/ {

     2733:             else:

     2734:                 mat = self.reindex_items(items).as_matrix()

          /* "pandas/internals.pyx":2734
     *                 mat = blk.get_values()
     *             else:
     *                 mat = self.reindex_items(items).as_matrix()             # <<<<<<<<<<<<<<
     *         else:
     *             if items is None:
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_items);
          __Pyx_GIVEREF(__pyx_v_items);
          __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_as_matrix); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_v_mat = __pyx_t_6;
          __pyx_t_6 = 0;
        }
        __pyx_L4:;
        goto __pyx_L3;
      }
      /*else*/ {

     2735:         else:

     2736:             if items is None:

        /* "pandas/internals.pyx":2736
     *                 mat = self.reindex_items(items).as_matrix()
     *         else:
     *             if items is None:             # <<<<<<<<<<<<<<
     *                 mat = self._interleave(self.items)
     *             else:
     */
        __pyx_t_8 = (__pyx_v_items == Py_None);
        __pyx_t_3 = (__pyx_t_8 != 0);
        if (__pyx_t_3) {

     2737:                 mat = self._interleave(self.items)

          /* "pandas/internals.pyx":2737
     *         else:
     *             if items is None:
     *                 mat = self._interleave(self.items)             # <<<<<<<<<<<<<<
     *             else:
     *                 mat = self.reindex_items(items).as_matrix()
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_interleave); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_t_5 = 0;
          __pyx_t_5 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_mat = __pyx_t_5;
          __pyx_t_5 = 0;
          goto __pyx_L5;
        }
        /*else*/ {

     2738:             else:

     2739:                 mat = self.reindex_items(items).as_matrix()

          /* "pandas/internals.pyx":2739
     *                 mat = self._interleave(self.items)
     *             else:
     *                 mat = self.reindex_items(items).as_matrix()             # <<<<<<<<<<<<<<
     *
     *         return mat
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_items);
          __Pyx_GIVEREF(__pyx_v_items);
          __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_as_matrix); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_mat = __pyx_t_6;
          __pyx_t_6 = 0;
        }
        __pyx_L5:;
      }
      __pyx_L3:;

     2740:

     2741:         return mat

      /* "pandas/internals.pyx":2741
     *                 mat = self.reindex_items(items).as_matrix()
     *
     *         return mat             # <<<<<<<<<<<<<<
     *
     *     def _interleave(self, items):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_mat);
      __pyx_r = __pyx_v_mat;
      goto __pyx_L0;

     2742:

     2743:     def _interleave(self, items):

    /* "pandas/internals.pyx":2743
     *         return mat
     *
     *     def _interleave(self, items):             # <<<<<<<<<<<<<<
     *         """
     *         Return ndarray from blocks with specified item order
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_119_interleave(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_118_interleave[] = "\n        Return ndarray from blocks with specified item order\n        Items must be contained in the blocks\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_119_interleave = {__Pyx_NAMESTR("_interleave"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_119_interleave, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_118_interleave)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_119_interleave(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interleave (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_items,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_interleave", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2743; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_interleave") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2743; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_items = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_interleave", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2743; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._interleave", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_118_interleave(__pyx_self, __pyx_v_self, __pyx_v_items);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_118_interleave(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_items) {
      PyObject *__pyx_v_dtype = NULL;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_itemmask = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_indexer = NULL;
      PyObject *__pyx_v_rl = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_idx = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interleave", 0);
      __Pyx_INCREF(__pyx_v_items);

      /* "pandas/internals.pyx":2743
     *         return mat
     *
     *     def _interleave(self, items):             # <<<<<<<<<<<<<<
     *         """
     *         Return ndarray from blocks with specified item order
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.BlockManager._interleave", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_itemmask);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XDECREF(__pyx_v_rl);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_idx);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2743
     *         return mat
     *
     *     def _interleave(self, items):             # <<<<<<<<<<<<<<
     *         """
     *         Return ndarray from blocks with specified item order
     */
      __pyx_tuple__603 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_items, __pyx_n_s_dtype, __pyx_n_s_result, __pyx_n_s_itemmask, __pyx_n_s_block, __pyx_n_s_indexer, __pyx_n_s_rl, __pyx_n_s_i, __pyx_n_s_idx); if (unlikely(!__pyx_tuple__603)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2743; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__603);
      __Pyx_GIVEREF(__pyx_tuple__603);

      /* "pandas/internals.pyx":2743
     *         return mat
     *
     *     def _interleave(self, items):             # <<<<<<<<<<<<<<
     *         """
     *         Return ndarray from blocks with specified item order
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_119_interleave, 0, __pyx_n_s_BlockManager__interleave, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__604)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2743; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_interleave, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2743; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__604 = (PyObject*)__Pyx_PyCode_New(2, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__603, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_interleave, 2743, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__604)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2743; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2744:         """

     2745:         Return ndarray from blocks with specified item order

     2746:         Items must be contained in the blocks

     2747:         """

     2748:         dtype = _interleaved_dtype(self.blocks)

      /* "pandas/internals.pyx":2748
     *         Items must be contained in the blocks
     *         """
     *         dtype = _interleaved_dtype(self.blocks)             # <<<<<<<<<<<<<<
     *         items = _ensure_index(items)
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_interleaved_dtype); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_dtype = __pyx_t_2;
      __pyx_t_2 = 0;

     2749:         items = _ensure_index(items)

      /* "pandas/internals.pyx":2749
     *         """
     *         dtype = _interleaved_dtype(self.blocks)
     *         items = _ensure_index(items)             # <<<<<<<<<<<<<<
     *
     *         result = np.empty(self.shape, dtype=dtype)
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2749; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2749; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2749; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF_SET(__pyx_v_items, __pyx_t_1);
      __pyx_t_1 = 0;

     2750:

     2751:         result = np.empty(self.shape, dtype=dtype)

      /* "pandas/internals.pyx":2751
     *         items = _ensure_index(items)
     *
     *         result = np.empty(self.shape, dtype=dtype)             # <<<<<<<<<<<<<<
     *         itemmask = np.zeros(len(items), dtype=bool)
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_result = __pyx_t_4;
      __pyx_t_4 = 0;

     2752:         itemmask = np.zeros(len(items), dtype=bool)

      /* "pandas/internals.pyx":2752
     *
     *         result = np.empty(self.shape, dtype=dtype)
     *         itemmask = np.zeros(len(items), dtype=bool)             # <<<<<<<<<<<<<<
     *
     *         # By construction, all of the item should be covered by one of the
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_5 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, ((PyObject*)&PyBool_Type)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2752; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_itemmask = __pyx_t_3;
      __pyx_t_3 = 0;

     2753:

     2754:         # By construction, all of the item should be covered by one of the

     2755:         # blocks

     2756:         if items.is_unique:

      /* "pandas/internals.pyx":2756
     *         # By construction, all of the item should be covered by one of the
     *         # blocks
     *         if items.is_unique:             # <<<<<<<<<<<<<<
     *
     *             for block in self.blocks:
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2756; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_6) {

     2757:

     2758:             for block in self.blocks:

        /* "pandas/internals.pyx":2758
     *         if items.is_unique:
     *
     *             for block in self.blocks:             # <<<<<<<<<<<<<<
     *                 indexer = items.get_indexer(block.items)
     *                 if (indexer == -1).any():
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
          __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_3 = __pyx_t_7(__pyx_t_4);
            if (unlikely(!__pyx_t_3)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_3);
          }
          __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_3);
          __pyx_t_3 = 0;

     2759:                 indexer = items.get_indexer(block.items)

          /* "pandas/internals.pyx":2759
     *
     *             for block in self.blocks:
     *                 indexer = items.get_indexer(block.items)             # <<<<<<<<<<<<<<
     *                 if (indexer == -1).any():
     *                     raise AssertionError('Items must contain all block items')
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_get_indexer); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
          __Pyx_GIVEREF(__pyx_t_2);
          __pyx_t_2 = 0;
          __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF_SET(__pyx_v_indexer, __pyx_t_2);
          __pyx_t_2 = 0;

     2760:                 if (indexer == -1).any():

          /* "pandas/internals.pyx":2760
     *             for block in self.blocks:
     *                 indexer = items.get_indexer(block.items)
     *                 if (indexer == -1).any():             # <<<<<<<<<<<<<<
     *                     raise AssertionError('Items must contain all block items')
     *                 result[indexer] = block.get_values(dtype)
     */
          __pyx_t_2 = PyObject_RichCompare(__pyx_v_indexer, __pyx_int_neg_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_any); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          if (__pyx_t_6) {

     2761:                     raise AssertionError('Items must contain all block items')

            /* "pandas/internals.pyx":2761
     *                 indexer = items.get_indexer(block.items)
     *                 if (indexer == -1).any():
     *                     raise AssertionError('Items must contain all block items')             # <<<<<<<<<<<<<<
     *                 result[indexer] = block.get_values(dtype)
     *                 itemmask[indexer] = 1
     */
            __pyx_t_2 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__82, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_Raise(__pyx_t_2, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }

      /* "pandas/internals.pyx":2761
     *                 indexer = items.get_indexer(block.items)
     *                 if (indexer == -1).any():
     *                     raise AssertionError('Items must contain all block items')             # <<<<<<<<<<<<<<
     *                 result[indexer] = block.get_values(dtype)
     *                 itemmask[indexer] = 1
     */
      __pyx_tuple__82 = PyTuple_Pack(1, __pyx_kp_s_Items_must_contain_all_block_ite); if (unlikely(!__pyx_tuple__82)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__82);
      __Pyx_GIVEREF(__pyx_tuple__82);

     2762:                 result[indexer] = block.get_values(dtype)

          /* "pandas/internals.pyx":2762
     *                 if (indexer == -1).any():
     *                     raise AssertionError('Items must contain all block items')
     *                 result[indexer] = block.get_values(dtype)             # <<<<<<<<<<<<<<
     *                 itemmask[indexer] = 1
     *
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_get_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2762; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2762; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_dtype);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_dtype);
          __Pyx_GIVEREF(__pyx_v_dtype);
          __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2762; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          if (unlikely(PyObject_SetItem(__pyx_v_result, __pyx_v_indexer, __pyx_t_3) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2762; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2763:                 itemmask[indexer] = 1

          /* "pandas/internals.pyx":2763
     *                     raise AssertionError('Items must contain all block items')
     *                 result[indexer] = block.get_values(dtype)
     *                 itemmask[indexer] = 1             # <<<<<<<<<<<<<<
     *
     *         else:
     */
          if (unlikely(PyObject_SetItem(__pyx_v_itemmask, __pyx_v_indexer, __pyx_int_1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2763; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     2764:

     2765:         else:

     2766:

     2767:             # non-unique, must use ref_locs

     2768:             rl = self._set_ref_locs()

        /* "pandas/internals.pyx":2768
     *
     *             # non-unique, must use ref_locs
     *             rl = self._set_ref_locs()             # <<<<<<<<<<<<<<
     *             for i, (block, idx) in enumerate(rl):
     *                 result[i] = block.get_values(dtype)[idx]
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2768; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2768; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_rl = __pyx_t_3;
        __pyx_t_3 = 0;

     2769:             for i, (block, idx) in enumerate(rl):

        /* "pandas/internals.pyx":2769
     *             # non-unique, must use ref_locs
     *             rl = self._set_ref_locs()
     *             for i, (block, idx) in enumerate(rl):             # <<<<<<<<<<<<<<
     *                 result[i] = block.get_values(dtype)[idx]
     *                 itemmask[i] = 1
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_3 = __pyx_int_0;
        if (PyList_CheckExact(__pyx_v_rl) || PyTuple_CheckExact(__pyx_v_rl)) {
          __pyx_t_4 = __pyx_v_rl; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_rl); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_7 = Py_TYPE(__pyx_t_4)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_4)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_1); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_7(__pyx_t_4);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
            PyObject* sequence = __pyx_t_1;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_8 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_8 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_2);
            __Pyx_INCREF(__pyx_t_8);
            #else
            __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_8 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            #endif
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_9 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_10 = Py_TYPE(__pyx_t_9)->tp_iternext;
            index = 0; __pyx_t_2 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_2)) goto __pyx_L9_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_2);
            index = 1; __pyx_t_8 = __pyx_t_10(__pyx_t_9); if (unlikely(!__pyx_t_8)) goto __pyx_L9_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_8);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_9), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_10 = NULL;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            goto __pyx_L10_unpacking_done;
            __pyx_L9_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __pyx_t_10 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L10_unpacking_done:;
          }
          __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_2);
          __pyx_t_2 = 0;
          __Pyx_XDECREF_SET(__pyx_v_idx, __pyx_t_8);
          __pyx_t_8 = 0;
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
          __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2769; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3);
          __pyx_t_3 = __pyx_t_1;
          __pyx_t_1 = 0;

     2770:                 result[i] = block.get_values(dtype)[idx]

          /* "pandas/internals.pyx":2770
     *             rl = self._set_ref_locs()
     *             for i, (block, idx) in enumerate(rl):
     *                 result[i] = block.get_values(dtype)[idx]             # <<<<<<<<<<<<<<
     *                 itemmask[i] = 1
     *
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_get_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2770; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2770; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_INCREF(__pyx_v_dtype);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_dtype);
          __Pyx_GIVEREF(__pyx_v_dtype);
          __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2770; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_8 = PyObject_GetItem(__pyx_t_2, __pyx_v_idx); if (unlikely(__pyx_t_8 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2770; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          if (unlikely(PyObject_SetItem(__pyx_v_result, __pyx_v_i, __pyx_t_8) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2770; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

     2771:                 itemmask[i] = 1

          /* "pandas/internals.pyx":2771
     *             for i, (block, idx) in enumerate(rl):
     *                 result[i] = block.get_values(dtype)[idx]
     *                 itemmask[i] = 1             # <<<<<<<<<<<<<<
     *
     *         if not itemmask.all():
     */
          if (unlikely(PyObject_SetItem(__pyx_v_itemmask, __pyx_v_i, __pyx_int_1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2771; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
      __pyx_L3:;

     2772:

     2773:         if not itemmask.all():

      /* "pandas/internals.pyx":2773
     *                 itemmask[i] = 1
     *
     *         if not itemmask.all():             # <<<<<<<<<<<<<<
     *             raise AssertionError('Some items were not contained in blocks')
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_itemmask, __pyx_n_s_all); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2773; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2773; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2773; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_11 = ((!__pyx_t_6) != 0);
      if (__pyx_t_11) {

     2774:             raise AssertionError('Some items were not contained in blocks')

        /* "pandas/internals.pyx":2774
     *
     *         if not itemmask.all():
     *             raise AssertionError('Some items were not contained in blocks')             # <<<<<<<<<<<<<<
     *
     *         return result
     */
        __pyx_t_4 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__83, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":2774
     *
     *         if not itemmask.all():
     *             raise AssertionError('Some items were not contained in blocks')             # <<<<<<<<<<<<<<
     *
     *         return result
     */
      __pyx_tuple__83 = PyTuple_Pack(1, __pyx_kp_s_Some_items_were_not_contained_in); if (unlikely(!__pyx_tuple__83)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2774; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__83);
      __Pyx_GIVEREF(__pyx_tuple__83);

     2775:

     2776:         return result

      /* "pandas/internals.pyx":2776
     *             raise AssertionError('Some items were not contained in blocks')
     *
     *         return result             # <<<<<<<<<<<<<<
     *
     *     def xs(self, key, axis=1, copy=True, takeable=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     2777:

     2778:     def xs(self, key, axis=1, copy=True, takeable=False):

    /* "pandas/internals.pyx":2778
     *         return result
     *
     *     def xs(self, key, axis=1, copy=True, takeable=False):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('Can only take xs across axis >= 1, got %d'
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_121xs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_121xs = {__Pyx_NAMESTR("xs"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_121xs, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_121xs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_key = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_takeable = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("xs (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_key,&__pyx_n_s_axis,&__pyx_n_s_copy,&__pyx_n_s_takeable,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)__pyx_int_1));
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_key)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("xs", 0, 2, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_takeable);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "xs") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_key = values[1];
        __pyx_v_axis = values[2];
        __pyx_v_copy = values[3];
        __pyx_v_takeable = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("xs", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.xs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_120xs(__pyx_self, __pyx_v_self, __pyx_v_key, __pyx_v_axis, __pyx_v_copy, __pyx_v_takeable);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_120xs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_key, PyObject *__pyx_v_axis, PyObject *__pyx_v_copy, PyObject *__pyx_v_takeable) {
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_v_slicer = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_newb = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_vals = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("xs", 0);

      /* "pandas/internals.pyx":2778
     *         return result
     *
     *     def xs(self, key, axis=1, copy=True, takeable=False):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('Can only take xs across axis >= 1, got %d'
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.BlockManager.xs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_slicer);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_vals);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2778
     *         return result
     *
     *     def xs(self, key, axis=1, copy=True, takeable=False):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('Can only take xs across axis >= 1, got %d'
     */
      __pyx_tuple__605 = PyTuple_Pack(14, __pyx_n_s_self, __pyx_n_s_key, __pyx_n_s_axis, __pyx_n_s_copy, __pyx_n_s_takeable, __pyx_n_s_loc, __pyx_n_s_slicer, __pyx_n_s_new_axes, __pyx_n_s_new_blocks, __pyx_n_s_blk, __pyx_n_s_newb, __pyx_n_s_block, __pyx_n_s_vals, __pyx_n_s__10); if (unlikely(!__pyx_tuple__605)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__605);
      __Pyx_GIVEREF(__pyx_tuple__605);
      __pyx_codeobj__606 = (PyObject*)__Pyx_PyCode_New(5, 0, 14, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__605, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_xs, 2778, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__606)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2778
     *         return result
     *
     *     def xs(self, key, axis=1, copy=True, takeable=False):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('Can only take xs across axis >= 1, got %d'
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_121xs, 0, __pyx_n_s_BlockManager_xs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__606)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__607);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_xs, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__607 = PyTuple_Pack(3, ((PyObject *)__pyx_int_1), ((PyObject *)Py_True), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__607)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2778; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__607);
      __Pyx_GIVEREF(__pyx_tuple__607);

     2779:         if axis < 1:

      /* "pandas/internals.pyx":2779
     *
     *     def xs(self, key, axis=1, copy=True, takeable=False):
     *         if axis < 1:             # <<<<<<<<<<<<<<
     *             raise AssertionError('Can only take xs across axis >= 1, got %d'
     *                                  % axis)
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_1, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     2780:             raise AssertionError('Can only take xs across axis >= 1, got %d'

        /* "pandas/internals.pyx":2780
     *     def xs(self, key, axis=1, copy=True, takeable=False):
     *         if axis < 1:
     *             raise AssertionError('Can only take xs across axis >= 1, got %d'             # <<<<<<<<<<<<<<
     *                                  % axis)
     *
     */
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     2781:                                  % axis)

        /* "pandas/internals.pyx":2781
     *         if axis < 1:
     *             raise AssertionError('Can only take xs across axis >= 1, got %d'
     *                                  % axis)             # <<<<<<<<<<<<<<
     *
     *         # take by position
     */
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_Can_only_take_xs_across_axis_1_g, __pyx_v_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2781; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

     2782:

     2783:         # take by position

     2784:         if takeable:

      /* "pandas/internals.pyx":2784
     *
     *         # take by position
     *         if takeable:             # <<<<<<<<<<<<<<
     *             loc = key
     *         else:
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_takeable); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2784; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     2785:             loc = key

        /* "pandas/internals.pyx":2785
     *         # take by position
     *         if takeable:
     *             loc = key             # <<<<<<<<<<<<<<
     *         else:
     *             loc = self.axes[axis].get_loc(key)
     */
        __Pyx_INCREF(__pyx_v_key);
        __pyx_v_loc = __pyx_v_key;
        goto __pyx_L4;
      }
      /*else*/ {

     2786:         else:

     2787:             loc = self.axes[axis].get_loc(key)

        /* "pandas/internals.pyx":2787
     *             loc = key
     *         else:
     *             loc = self.axes[axis].get_loc(key)             # <<<<<<<<<<<<<<
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2787; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyObject_GetItem(__pyx_t_1, __pyx_v_axis); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2787; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2787; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2787; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_key);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_key);
        __Pyx_GIVEREF(__pyx_v_key);
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2787; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_v_loc = __pyx_t_4;
        __pyx_t_4 = 0;
      }
      __pyx_L4:;

     2788:

     2789:         slicer = [slice(None, None) for _ in range(self.ndim)]

      /* "pandas/internals.pyx":2789
     *             loc = self.axes[axis].get_loc(key)
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]             # <<<<<<<<<<<<<<
     *         slicer[axis] = loc
     *         slicer = tuple(slicer)
     */
      __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_range); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_5 = __pyx_t_1; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
          if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
          if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_7(__pyx_t_5);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v__, __pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PySlice_Type))), __pyx_tuple__84, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_slicer = __pyx_t_4;
      __pyx_t_4 = 0;

      /* "pandas/internals.pyx":2789
     *             loc = self.axes[axis].get_loc(key)
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]             # <<<<<<<<<<<<<<
     *         slicer[axis] = loc
     *         slicer = tuple(slicer)
     */
      __pyx_tuple__84 = PyTuple_Pack(2, Py_None, Py_None); if (unlikely(!__pyx_tuple__84)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2789; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__84);
      __Pyx_GIVEREF(__pyx_tuple__84);

     2790:         slicer[axis] = loc

      /* "pandas/internals.pyx":2790
     *
     *         slicer = [slice(None, None) for _ in range(self.ndim)]
     *         slicer[axis] = loc             # <<<<<<<<<<<<<<
     *         slicer = tuple(slicer)
     *
     */
      if (unlikely(PyObject_SetItem(__pyx_v_slicer, __pyx_v_axis, __pyx_v_loc) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2790; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2791:         slicer = tuple(slicer)

      /* "pandas/internals.pyx":2791
     *         slicer = [slice(None, None) for _ in range(self.ndim)]
     *         slicer[axis] = loc
     *         slicer = tuple(slicer)             # <<<<<<<<<<<<<<
     *
     *         new_axes = list(self.axes)
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_slicer);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_slicer);
      __Pyx_GIVEREF(__pyx_v_slicer);
      __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2791; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_slicer, __pyx_t_5);
      __pyx_t_5 = 0;

     2792:

     2793:         new_axes = list(self.axes)

      /* "pandas/internals.pyx":2793
     *         slicer = tuple(slicer)
     *
     *         new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *
     *         # could be an array indexer!
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_5);
      __pyx_t_5 = 0;

     2794:

     2795:         # could be an array indexer!

     2796:         if isinstance(loc, (slice, np.ndarray)):

      /* "pandas/internals.pyx":2796
     *
     *         # could be an array indexer!
     *         if isinstance(loc, (slice, np.ndarray)):             # <<<<<<<<<<<<<<
     *             new_axes[axis] = new_axes[axis][loc]
     *         else:
     */
      __Pyx_INCREF(__pyx_v_loc);
      __pyx_t_5 = __pyx_v_loc;
      __pyx_t_2 = PySlice_Check(__pyx_t_5);
      if (!__pyx_t_2) {
        __pyx_t_8 = __Pyx_TypeCheck(__pyx_t_5, ((PyObject*)__pyx_ptype_5numpy_ndarray));
        __pyx_t_9 = __pyx_t_8;
      } else {
        __pyx_t_9 = __pyx_t_2;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_2 = (__pyx_t_9 != 0);
      if (__pyx_t_2) {

     2797:             new_axes[axis] = new_axes[axis][loc]

        /* "pandas/internals.pyx":2797
     *         # could be an array indexer!
     *         if isinstance(loc, (slice, np.ndarray)):
     *             new_axes[axis] = new_axes[axis][loc]             # <<<<<<<<<<<<<<
     *         else:
     *             new_axes.pop(axis)
     */
        __pyx_t_5 = PyObject_GetItem(__pyx_v_new_axes, __pyx_v_axis); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2797; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = PyObject_GetItem(__pyx_t_5, __pyx_v_loc); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2797; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (unlikely(PyObject_SetItem(__pyx_v_new_axes, __pyx_v_axis, __pyx_t_4) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2797; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L7;
      }
      /*else*/ {

     2798:         else:

     2799:             new_axes.pop(axis)

        /* "pandas/internals.pyx":2799
     *             new_axes[axis] = new_axes[axis][loc]
     *         else:
     *             new_axes.pop(axis)             # <<<<<<<<<<<<<<
     *
     *         new_blocks = []
     */
        __pyx_t_6 = __Pyx_PyIndex_AsSsize_t(__pyx_v_axis); if (unlikely((__pyx_t_6 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2799; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = __Pyx_PyList_PopIndex(__pyx_v_new_axes, __pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2799; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      }
      __pyx_L7:;

     2800:

     2801:         new_blocks = []

      /* "pandas/internals.pyx":2801
     *             new_axes.pop(axis)
     *
     *         new_blocks = []             # <<<<<<<<<<<<<<
     *         if len(self.blocks) > 1:
     *             if not copy:
     */
      __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2801; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

     2802:         if len(self.blocks) > 1:

      /* "pandas/internals.pyx":2802
     *
     *         new_blocks = []
     *         if len(self.blocks) > 1:             # <<<<<<<<<<<<<<
     *             if not copy:
     *                 raise Exception('cannot get view of mixed-type or '
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2802; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_6 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2802; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = ((__pyx_t_6 > 1) != 0);
      if (__pyx_t_2) {

     2803:             if not copy:

        /* "pandas/internals.pyx":2803
     *         new_blocks = []
     *         if len(self.blocks) > 1:
     *             if not copy:             # <<<<<<<<<<<<<<
     *                 raise Exception('cannot get view of mixed-type or '
     *                                 'non-consolidated DataFrame')
     */
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2803; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_9 = ((!__pyx_t_2) != 0);
        if (__pyx_t_9) {

     2804:                 raise Exception('cannot get view of mixed-type or '

          /* "pandas/internals.pyx":2804
     *         if len(self.blocks) > 1:
     *             if not copy:
     *                 raise Exception('cannot get view of mixed-type or '             # <<<<<<<<<<<<<<
     *                                 'non-consolidated DataFrame')
     *             for blk in self.blocks:
     */
          __pyx_t_4 = PyObject_Call(__pyx_builtin_Exception, __pyx_tuple__85, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_Raise(__pyx_t_4, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }

      /* "pandas/internals.pyx":2804
     *         if len(self.blocks) > 1:
     *             if not copy:
     *                 raise Exception('cannot get view of mixed-type or '             # <<<<<<<<<<<<<<
     *                                 'non-consolidated DataFrame')
     *             for blk in self.blocks:
     */
      __pyx_tuple__85 = PyTuple_Pack(1, __pyx_kp_s_cannot_get_view_of_mixed_type_or); if (unlikely(!__pyx_tuple__85)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2804; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__85);
      __Pyx_GIVEREF(__pyx_tuple__85);

     2805:                                 'non-consolidated DataFrame')

     2806:             for blk in self.blocks:

        /* "pandas/internals.pyx":2806
     *                 raise Exception('cannot get view of mixed-type or '
     *                                 'non-consolidated DataFrame')
     *             for blk in self.blocks:             # <<<<<<<<<<<<<<
     *                 newb = make_block(blk.values[slicer],
     *                                   blk.items,
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) {
          __pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_4); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_4 = __pyx_t_7(__pyx_t_5);
            if (unlikely(!__pyx_t_4)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2806; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_4);
          }
          __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_4);
          __pyx_t_4 = 0;

     2807:                 newb = make_block(blk.values[slicer],

          /* "pandas/internals.pyx":2807
     *                                 'non-consolidated DataFrame')
     *             for blk in self.blocks:
     *                 newb = make_block(blk.values[slicer],             # <<<<<<<<<<<<<<
     *                                   blk.items,
     *                                   blk.ref_items,
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = PyObject_GetItem(__pyx_t_1, __pyx_v_slicer); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

          /* "pandas/internals.pyx":2807
     *                                 'non-consolidated DataFrame')
     *             for blk in self.blocks:
     *                 newb = make_block(blk.values[slicer],             # <<<<<<<<<<<<<<
     *                                   blk.items,
     *                                   blk.ref_items,
     */
          __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_11, 2, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __pyx_t_3 = 0;
          __pyx_t_1 = 0;
          __pyx_t_10 = 0;
          __pyx_t_10 = PyDict_New(); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);

          /* "pandas/internals.pyx":2807
     *                                 'non-consolidated DataFrame')
     *             for blk in self.blocks:
     *                 newb = make_block(blk.values[slicer],             # <<<<<<<<<<<<<<
     *                                   blk.items,
     *                                   blk.ref_items,
     */
          __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_11, __pyx_t_10); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF_SET(__pyx_v_newb, __pyx_t_1);
          __pyx_t_1 = 0;

     2808:                                   blk.items,

          /* "pandas/internals.pyx":2808
     *             for blk in self.blocks:
     *                 newb = make_block(blk.values[slicer],
     *                                   blk.items,             # <<<<<<<<<<<<<<
     *                                   blk.ref_items,
     *                                   klass=blk.__class__,
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

     2809:                                   blk.ref_items,

          /* "pandas/internals.pyx":2809
     *                 newb = make_block(blk.values[slicer],
     *                                   blk.items,
     *                                   blk.ref_items,             # <<<<<<<<<<<<<<
     *                                   klass=blk.__class__,
     *                                   fastpath=True)
     */
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);

     2810:                                   klass=blk.__class__,

          /* "pandas/internals.pyx":2810
     *                                   blk.items,
     *                                   blk.ref_items,
     *                                   klass=blk.__class__,             # <<<<<<<<<<<<<<
     *                                   fastpath=True)
     *                 new_blocks.append(newb)
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_class); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2810; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_klass, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2811:                                   fastpath=True)

          /* "pandas/internals.pyx":2811
     *                                   blk.ref_items,
     *                                   klass=blk.__class__,
     *                                   fastpath=True)             # <<<<<<<<<<<<<<
     *                 new_blocks.append(newb)
     *         elif len(self.blocks) == 1:
     */
          if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2812:                 new_blocks.append(newb)

          /* "pandas/internals.pyx":2812
     *                                   klass=blk.__class__,
     *                                   fastpath=True)
     *                 new_blocks.append(newb)             # <<<<<<<<<<<<<<
     *         elif len(self.blocks) == 1:
     *             block = self.blocks[0]
     */
          __pyx_t_12 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_newb); if (unlikely(__pyx_t_12 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2812; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L8;
      }

     2813:         elif len(self.blocks) == 1:

      /* "pandas/internals.pyx":2813
     *                                   fastpath=True)
     *                 new_blocks.append(newb)
     *         elif len(self.blocks) == 1:             # <<<<<<<<<<<<<<
     *             block = self.blocks[0]
     *             vals = block.values[slicer]
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2813; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_6 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2813; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_9 = ((__pyx_t_6 == 1) != 0);
      if (__pyx_t_9) {

     2814:             block = self.blocks[0]

        /* "pandas/internals.pyx":2814
     *                 new_blocks.append(newb)
     *         elif len(self.blocks) == 1:
     *             block = self.blocks[0]             # <<<<<<<<<<<<<<
     *             vals = block.values[slicer]
     *             if copy:
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2814; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = __Pyx_GetItemInt(__pyx_t_5, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2814; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_block = __pyx_t_1;
        __pyx_t_1 = 0;

     2815:             vals = block.values[slicer]

        /* "pandas/internals.pyx":2815
     *         elif len(self.blocks) == 1:
     *             block = self.blocks[0]
     *             vals = block.values[slicer]             # <<<<<<<<<<<<<<
     *             if copy:
     *                 vals = vals.copy()
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2815; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyObject_GetItem(__pyx_t_1, __pyx_v_slicer); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2815; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_vals = __pyx_t_5;
        __pyx_t_5 = 0;

     2816:             if copy:

        /* "pandas/internals.pyx":2816
     *             block = self.blocks[0]
     *             vals = block.values[slicer]
     *             if copy:             # <<<<<<<<<<<<<<
     *                 vals = vals.copy()
     *             new_blocks = [make_block(vals,
     */
        __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2816; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_9) {

     2817:                 vals = vals.copy()

          /* "pandas/internals.pyx":2817
     *             vals = block.values[slicer]
     *             if copy:
     *                 vals = vals.copy()             # <<<<<<<<<<<<<<
     *             new_blocks = [make_block(vals,
     *                                      self.items,
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_vals, __pyx_n_s_copy); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2817; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2817; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF_SET(__pyx_v_vals, __pyx_t_1);
          __pyx_t_1 = 0;
          goto __pyx_L12;
        }
        __pyx_L12:;

     2818:             new_blocks = [make_block(vals,

        /* "pandas/internals.pyx":2818
     *             if copy:
     *                 vals = vals.copy()
     *             new_blocks = [make_block(vals,             # <<<<<<<<<<<<<<
     *                                      self.items,
     *                                      self.items,
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":2818
     *             if copy:
     *                 vals = vals.copy()
     *             new_blocks = [make_block(vals,             # <<<<<<<<<<<<<<
     *                                      self.items,
     *                                      self.items,
     */
        __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_INCREF(__pyx_v_vals);
        PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_vals);
        __Pyx_GIVEREF(__pyx_v_vals);
        PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_11, 2, __pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_10);
        __pyx_t_5 = 0;
        __pyx_t_10 = 0;
        __pyx_t_10 = PyDict_New(); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);

        /* "pandas/internals.pyx":2818
     *             if copy:
     *                 vals = vals.copy()
     *             new_blocks = [make_block(vals,             # <<<<<<<<<<<<<<
     *                                      self.items,
     *                                      self.items,
     */
        __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_11, __pyx_t_10); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_10 = PyList_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        PyList_SET_ITEM(__pyx_t_10, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __Pyx_DECREF_SET(__pyx_v_new_blocks, ((PyObject*)__pyx_t_10));
        __pyx_t_10 = 0;
        goto __pyx_L8;
      }
      __pyx_L8:;

     2819:                                      self.items,

        /* "pandas/internals.pyx":2819
     *                 vals = vals.copy()
     *             new_blocks = [make_block(vals,
     *                                      self.items,             # <<<<<<<<<<<<<<
     *                                      self.items,
     *                                      klass=block.__class__,
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2819; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

     2820:                                      self.items,

        /* "pandas/internals.pyx":2820
     *             new_blocks = [make_block(vals,
     *                                      self.items,
     *                                      self.items,             # <<<<<<<<<<<<<<
     *                                      klass=block.__class__,
     *                                      fastpath=True)]
     */
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2820; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);

     2821:                                      klass=block.__class__,

        /* "pandas/internals.pyx":2821
     *                                      self.items,
     *                                      self.items,
     *                                      klass=block.__class__,             # <<<<<<<<<<<<<<
     *                                      fastpath=True)]
     *
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_klass, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2822:                                      fastpath=True)]

        /* "pandas/internals.pyx":2822
     *                                      self.items,
     *                                      klass=block.__class__,
     *                                      fastpath=True)]             # <<<<<<<<<<<<<<
     *
     *         return self.__class__(new_blocks, new_axes)
     */
        if (PyDict_SetItem(__pyx_t_10, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2823:

     2824:         return self.__class__(new_blocks, new_axes)

      /* "pandas/internals.pyx":2824
     *                                      fastpath=True)]
     *
     *         return self.__class__(new_blocks, new_axes)             # <<<<<<<<<<<<<<
     *
     *     def fast_2d_xs(self, loc, copy=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2824; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_10);
      __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2824; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_new_blocks);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_new_blocks);
      __Pyx_GIVEREF(__pyx_v_new_blocks);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_11 = PyObject_Call(__pyx_t_10, __pyx_t_5, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2824; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_11;
      __pyx_t_11 = 0;
      goto __pyx_L0;

     2825:

     2826:     def fast_2d_xs(self, loc, copy=False):

    /* "pandas/internals.pyx":2826
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def fast_2d_xs(self, loc, copy=False):             # <<<<<<<<<<<<<<
     *         """
     *         get a cross sectional for a given location in the
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_123fast_2d_xs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_122fast_2d_xs[] = "\n        get a cross sectional for a given location in the\n        items ; handle dups\n\n        return the result and a flag if a copy was actually made\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_123fast_2d_xs = {__Pyx_NAMESTR("fast_2d_xs"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_123fast_2d_xs, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_122fast_2d_xs)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_123fast_2d_xs(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_loc = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fast_2d_xs (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_loc,&__pyx_n_s_copy,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_loc)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("fast_2d_xs", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "fast_2d_xs") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_loc = values[1];
        __pyx_v_copy = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("fast_2d_xs", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.fast_2d_xs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_122fast_2d_xs(__pyx_self, __pyx_v_self, __pyx_v_loc, __pyx_v_copy);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_122fast_2d_xs(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_loc, PyObject *__pyx_v_copy) {
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_dtype = NULL;
      Py_ssize_t __pyx_v_n;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_j = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("fast_2d_xs", 0);

      /* "pandas/internals.pyx":2826
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def fast_2d_xs(self, loc, copy=False):             # <<<<<<<<<<<<<<
     *         """
     *         get a cross sectional for a given location in the
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.BlockManager.fast_2d_xs", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_j);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2826
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def fast_2d_xs(self, loc, copy=False):             # <<<<<<<<<<<<<<
     *         """
     *         get a cross sectional for a given location in the
     */
      __pyx_tuple__608 = PyTuple_Pack(11, __pyx_n_s_self, __pyx_n_s_loc, __pyx_n_s_copy, __pyx_n_s_result, __pyx_n_s_items, __pyx_n_s_dtype, __pyx_n_s_n, __pyx_n_s_blk, __pyx_n_s_j, __pyx_n_s_item, __pyx_n_s_i); if (unlikely(!__pyx_tuple__608)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__608);
      __Pyx_GIVEREF(__pyx_tuple__608);
      __pyx_codeobj__609 = (PyObject*)__Pyx_PyCode_New(3, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__608, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_fast_2d_xs, 2826, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__609)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2826
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def fast_2d_xs(self, loc, copy=False):             # <<<<<<<<<<<<<<
     *         """
     *         get a cross sectional for a given location in the
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_123fast_2d_xs, 0, __pyx_n_s_BlockManager_fast_2d_xs, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__609)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__610);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_fast_2d_xs, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__610 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__610)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__610);
      __Pyx_GIVEREF(__pyx_tuple__610);

     2827:         """

     2828:         get a cross sectional for a given location in the

     2829:         items ; handle dups

     2830:

     2831:         return the result and a flag if a copy was actually made

     2832:         """

     2833:         if len(self.blocks) == 1:

      /* "pandas/internals.pyx":2833
     *         return the result and a flag if a copy was actually made
     *         """
     *         if len(self.blocks) == 1:             # <<<<<<<<<<<<<<
     *             result = self.blocks[0].values[:, loc]
     *             if copy:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2833; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2833; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = ((__pyx_t_2 == 1) != 0);
      if (__pyx_t_3) {

     2834:             result = self.blocks[0].values[:, loc]

        /* "pandas/internals.pyx":2834
     *         """
     *         if len(self.blocks) == 1:
     *             result = self.blocks[0].values[:, loc]             # <<<<<<<<<<<<<<
     *             if copy:
     *                 result = result.copy()
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2834; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_slice__86);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_slice__86);
        __Pyx_GIVEREF(__pyx_slice__86);
        __Pyx_INCREF(__pyx_v_loc);
        PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_loc);
        __Pyx_GIVEREF(__pyx_v_loc);
        __pyx_t_5 = PyObject_GetItem(__pyx_t_1, __pyx_t_4); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2834; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_result = __pyx_t_5;
        __pyx_t_5 = 0;

      /* "pandas/internals.pyx":2834
     *         """
     *         if len(self.blocks) == 1:
     *             result = self.blocks[0].values[:, loc]             # <<<<<<<<<<<<<<
     *             if copy:
     *                 result = result.copy()
     */
      __pyx_slice__86 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__86)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__86);
      __Pyx_GIVEREF(__pyx_slice__86);

     2835:             if copy:

        /* "pandas/internals.pyx":2835
     *         if len(self.blocks) == 1:
     *             result = self.blocks[0].values[:, loc]
     *             if copy:             # <<<<<<<<<<<<<<
     *                 result = result.copy()
     *             return result, copy
     */
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_3) {

     2836:                 result = result.copy()

          /* "pandas/internals.pyx":2836
     *             result = self.blocks[0].values[:, loc]
     *             if copy:
     *                 result = result.copy()             # <<<<<<<<<<<<<<
     *             return result, copy
     *
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_copy); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2836; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2836; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF_SET(__pyx_v_result, __pyx_t_4);
          __pyx_t_4 = 0;
          goto __pyx_L4;
        }
        __pyx_L4:;

     2837:             return result, copy

        /* "pandas/internals.pyx":2837
     *             if copy:
     *                 result = result.copy()
     *             return result, copy             # <<<<<<<<<<<<<<
     *
     *         items = self.items
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_result);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_result);
        __Pyx_GIVEREF(__pyx_v_result);
        __Pyx_INCREF(__pyx_v_copy);
        PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_copy);
        __Pyx_GIVEREF(__pyx_v_copy);
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

     2838:

     2839:         items = self.items

      /* "pandas/internals.pyx":2839
     *             return result, copy
     *
     *         items = self.items             # <<<<<<<<<<<<<<
     *
     *         # non-unique (GH4726)
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2839; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_items = __pyx_t_4;
      __pyx_t_4 = 0;

     2840:

     2841:         # non-unique (GH4726)

     2842:         if not items.is_unique:

      /* "pandas/internals.pyx":2842
     *
     *         # non-unique (GH4726)
     *         if not items.is_unique:             # <<<<<<<<<<<<<<
     *             return self._interleave(items).ravel(), True
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2842; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2842; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_6 = ((!__pyx_t_3) != 0);
      if (__pyx_t_6) {

     2843:             return self._interleave(items).ravel(), True

        /* "pandas/internals.pyx":2843
     *         # non-unique (GH4726)
     *         if not items.is_unique:
     *             return self._interleave(items).ravel(), True             # <<<<<<<<<<<<<<
     *
     *         # unique
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_interleave); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2843; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2843; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2843; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ravel); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2843; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2843; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2843; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __Pyx_INCREF(Py_True);
        PyTuple_SET_ITEM(__pyx_t_5, 1, Py_True);
        __Pyx_GIVEREF(Py_True);
        __pyx_t_1 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L0;
      }

     2844:

     2845:         # unique

     2846:         dtype = _interleaved_dtype(self.blocks)

      /* "pandas/internals.pyx":2846
     *
     *         # unique
     *         dtype = _interleaved_dtype(self.blocks)             # <<<<<<<<<<<<<<
     *         n = len(items)
     *         result = np.empty(n, dtype=dtype)
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_interleaved_dtype); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2846; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2846; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2846; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2846; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_dtype = __pyx_t_1;
      __pyx_t_1 = 0;

     2847:         n = len(items)

      /* "pandas/internals.pyx":2847
     *         # unique
     *         dtype = _interleaved_dtype(self.blocks)
     *         n = len(items)             # <<<<<<<<<<<<<<
     *         result = np.empty(n, dtype=dtype)
     *         for blk in self.blocks:
     */
      __pyx_t_2 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2847; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_v_n = __pyx_t_2;

     2848:         result = np.empty(n, dtype=dtype)

      /* "pandas/internals.pyx":2848
     *         dtype = _interleaved_dtype(self.blocks)
     *         n = len(items)
     *         result = np.empty(n, dtype=dtype)             # <<<<<<<<<<<<<<
     *         for blk in self.blocks:
     *             for j, item in enumerate(blk.items):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_n); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_7 = PyObject_Call(__pyx_t_4, __pyx_t_5, __pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_result = __pyx_t_7;
      __pyx_t_7 = 0;

     2849:         for blk in self.blocks:

      /* "pandas/internals.pyx":2849
     *         n = len(items)
     *         result = np.empty(n, dtype=dtype)
     *         for blk in self.blocks:             # <<<<<<<<<<<<<<
     *             for j, item in enumerate(blk.items):
     *                 i = items.get_loc(item)
     */
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) {
        __pyx_t_1 = __pyx_t_7; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_7 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_7); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_7); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_7 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_7 = __pyx_t_8(__pyx_t_1);
          if (unlikely(!__pyx_t_7)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2849; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_7);
        }
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_7);
        __pyx_t_7 = 0;

     2850:             for j, item in enumerate(blk.items):

        /* "pandas/internals.pyx":2850
     *         result = np.empty(n, dtype=dtype)
     *         for blk in self.blocks:
     *             for j, item in enumerate(blk.items):             # <<<<<<<<<<<<<<
     *                 i = items.get_loc(item)
     *                 result[i] = blk._try_coerce_result(blk.iget((j, loc)))
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_7 = __pyx_int_0;
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) {
          __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); __pyx_t_9 = 0;
          __pyx_t_10 = NULL;
        } else {
          __pyx_t_9 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_10 = Py_TYPE(__pyx_t_4)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        for (;;) {
          if (!__pyx_t_10 && PyList_CheckExact(__pyx_t_4)) {
            if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_9); __Pyx_INCREF(__pyx_t_5); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_10 && PyTuple_CheckExact(__pyx_t_4)) {
            if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_9); __Pyx_INCREF(__pyx_t_5); __pyx_t_9++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_9); __pyx_t_9++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_5 = __pyx_t_10(__pyx_t_4);
            if (unlikely(!__pyx_t_5)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_5);
          }
          __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_5);
          __pyx_t_5 = 0;
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_7);
          __pyx_t_5 = PyNumber_Add(__pyx_t_7, __pyx_int_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_7);
          __pyx_t_7 = __pyx_t_5;
          __pyx_t_5 = 0;

     2851:                 i = items.get_loc(item)

          /* "pandas/internals.pyx":2851
     *         for blk in self.blocks:
     *             for j, item in enumerate(blk.items):
     *                 i = items.get_loc(item)             # <<<<<<<<<<<<<<
     *                 result[i] = blk._try_coerce_result(blk.iget((j, loc)))
     *
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2851; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2851; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __pyx_t_12 = PyObject_Call(__pyx_t_5, __pyx_t_11, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2851; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_12);
          __pyx_t_12 = 0;

     2852:                 result[i] = blk._try_coerce_result(blk.iget((j, loc)))

          /* "pandas/internals.pyx":2852
     *             for j, item in enumerate(blk.items):
     *                 i = items.get_loc(item)
     *                 result[i] = blk._try_coerce_result(blk.iget((j, loc)))             # <<<<<<<<<<<<<<
     *
     *         return result, True
     */
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_try_coerce_result); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_iget); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_j);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_j);
          __Pyx_GIVEREF(__pyx_v_j);
          __Pyx_INCREF(__pyx_v_loc);
          PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_loc);
          __Pyx_GIVEREF(__pyx_v_loc);
          __pyx_t_13 = PyTuple_New(1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_t_5 = 0;
          __pyx_t_5 = PyObject_Call(__pyx_t_11, __pyx_t_13, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __pyx_t_13 = PyTuple_New(1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_t_5 = 0;
          __pyx_t_5 = PyObject_Call(__pyx_t_12, __pyx_t_13, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          if (unlikely(PyObject_SetItem(__pyx_v_result, __pyx_v_i, __pyx_t_5) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     2853:

     2854:         return result, True

      /* "pandas/internals.pyx":2854
     *                 result[i] = blk._try_coerce_result(blk.iget((j, loc)))
     *
     *         return result, True             # <<<<<<<<<<<<<<
     *
     *     def consolidate(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2854; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_result);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_result);
      __Pyx_GIVEREF(__pyx_v_result);
      __Pyx_INCREF(Py_True);
      PyTuple_SET_ITEM(__pyx_t_1, 1, Py_True);
      __Pyx_GIVEREF(Py_True);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     2855:

     2856:     def consolidate(self):

    /* "pandas/internals.pyx":2856
     *         return result, True
     *
     *     def consolidate(self):             # <<<<<<<<<<<<<<
     *         """
     *         Join together blocks having same dtype
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_125consolidate(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_124consolidate[] = "\n        Join together blocks having same dtype\n\n        Returns\n        -------\n        y : BlockManager\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_125consolidate = {__Pyx_NAMESTR("consolidate"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_125consolidate, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_124consolidate)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_125consolidate(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("consolidate (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_124consolidate(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_124consolidate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_bm = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("consolidate", 0);

      /* "pandas/internals.pyx":2856
     *         return result, True
     *
     *     def consolidate(self):             # <<<<<<<<<<<<<<
     *         """
     *         Join together blocks having same dtype
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.BlockManager.consolidate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_bm);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2856
     *         return result, True
     *
     *     def consolidate(self):             # <<<<<<<<<<<<<<
     *         """
     *         Join together blocks having same dtype
     */
      __pyx_tuple__611 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_bm); if (unlikely(!__pyx_tuple__611)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2856; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__611);
      __Pyx_GIVEREF(__pyx_tuple__611);

      /* "pandas/internals.pyx":2856
     *         return result, True
     *
     *     def consolidate(self):             # <<<<<<<<<<<<<<
     *         """
     *         Join together blocks having same dtype
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_125consolidate, 0, __pyx_n_s_BlockManager_consolidate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__612)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2856; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_consolidate_2, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2856; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__612 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__611, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_consolidate_2, 2856, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__612)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2856; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2857:         """

     2858:         Join together blocks having same dtype

     2859:

     2860:         Returns

     2861:         -------

     2862:         y : BlockManager

     2863:         """

     2864:         if self.is_consolidated():

      /* "pandas/internals.pyx":2864
     *         y : BlockManager
     *         """
     *         if self.is_consolidated():             # <<<<<<<<<<<<<<
     *             return self
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_consolidated_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2864; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     2865:             return self

        /* "pandas/internals.pyx":2865
     *         """
     *         if self.is_consolidated():
     *             return self             # <<<<<<<<<<<<<<
     *
     *         bm = self.__class__(self.blocks, self.axes)
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_self);
        __pyx_r = __pyx_v_self;
        goto __pyx_L0;
      }

     2866:

     2867:         bm = self.__class__(self.blocks, self.axes)

      /* "pandas/internals.pyx":2867
     *             return self
     *
     *         bm = self.__class__(self.blocks, self.axes)             # <<<<<<<<<<<<<<
     *         bm._consolidate_inplace()
     *         return bm
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_1 = 0;
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_bm = __pyx_t_4;
      __pyx_t_4 = 0;

     2868:         bm._consolidate_inplace()

      /* "pandas/internals.pyx":2868
     *
     *         bm = self.__class__(self.blocks, self.axes)
     *         bm._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return bm
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_bm, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2868; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2868; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2869:         return bm

      /* "pandas/internals.pyx":2869
     *         bm = self.__class__(self.blocks, self.axes)
     *         bm._consolidate_inplace()
     *         return bm             # <<<<<<<<<<<<<<
     *
     *     def _consolidate_inplace(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_bm);
      __pyx_r = __pyx_v_bm;
      goto __pyx_L0;

     2870:

     2871:     def _consolidate_inplace(self):

    /* "pandas/internals.pyx":2871
     *         return bm
     *
     *     def _consolidate_inplace(self):             # <<<<<<<<<<<<<<
     *         if not self.is_consolidated():
     *             self.blocks = _consolidate(self.blocks, self.items)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_127_consolidate_inplace(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_127_consolidate_inplace = {__Pyx_NAMESTR("_consolidate_inplace"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_127_consolidate_inplace, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_127_consolidate_inplace(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_inplace (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_126_consolidate_inplace(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_126_consolidate_inplace(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_inplace", 0);

      /* "pandas/internals.pyx":2871
     *         return bm
     *
     *     def _consolidate_inplace(self):             # <<<<<<<<<<<<<<
     *         if not self.is_consolidated():
     *             self.blocks = _consolidate(self.blocks, self.items)
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.BlockManager._consolidate_inplace", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2871
     *         return bm
     *
     *     def _consolidate_inplace(self):             # <<<<<<<<<<<<<<
     *         if not self.is_consolidated():
     *             self.blocks = _consolidate(self.blocks, self.items)
     */
      __pyx_tuple__613 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__613)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__613);
      __Pyx_GIVEREF(__pyx_tuple__613);

      /* "pandas/internals.pyx":2871
     *         return bm
     *
     *     def _consolidate_inplace(self):             # <<<<<<<<<<<<<<
     *         if not self.is_consolidated():
     *             self.blocks = _consolidate(self.blocks, self.items)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_127_consolidate_inplace, 0, __pyx_n_s_BlockManager__consolidate_inplac, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__614)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_consolidate_inplace, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__614 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__613, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_consolidate_inplace, 2871, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__614)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2872:         if not self.is_consolidated():

      /* "pandas/internals.pyx":2872
     *
     *     def _consolidate_inplace(self):
     *         if not self.is_consolidated():             # <<<<<<<<<<<<<<
     *             self.blocks = _consolidate(self.blocks, self.items)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_consolidated_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = ((!__pyx_t_3) != 0);
      if (__pyx_t_4) {

     2873:             self.blocks = _consolidate(self.blocks, self.items)

        /* "pandas/internals.pyx":2873
     *     def _consolidate_inplace(self):
     *         if not self.is_consolidated():
     *             self.blocks = _consolidate(self.blocks, self.items)             # <<<<<<<<<<<<<<
     *
     *             # reset our mappings
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_consolidate); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2873; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2873; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2873; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2873; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_1 = 0;
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2873; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_blocks, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2873; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     2874:

     2875:             # reset our mappings

     2876:             if not self.items.is_unique:

        /* "pandas/internals.pyx":2876
     *
     *             # reset our mappings
     *             if not self.items.is_unique:             # <<<<<<<<<<<<<<
     *                 self._ref_locs = None
     *                 self._items_map = None
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_3 = ((!__pyx_t_4) != 0);
        if (__pyx_t_3) {

     2877:                 self._ref_locs = None

          /* "pandas/internals.pyx":2877
     *             # reset our mappings
     *             if not self.items.is_unique:
     *                 self._ref_locs = None             # <<<<<<<<<<<<<<
     *                 self._items_map = None
     *                 self._set_ref_locs(do_refs=True)
     */
          if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2878:                 self._items_map = None

          /* "pandas/internals.pyx":2878
     *             if not self.items.is_unique:
     *                 self._ref_locs = None
     *                 self._items_map = None             # <<<<<<<<<<<<<<
     *                 self._set_ref_locs(do_refs=True)
     *
     */
          if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items_map, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2878; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2879:                 self._set_ref_locs(do_refs=True)

          /* "pandas/internals.pyx":2879
     *                 self._ref_locs = None
     *                 self._items_map = None
     *                 self._set_ref_locs(do_refs=True)             # <<<<<<<<<<<<<<
     *
     *             self._is_consolidated = True
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2879; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2879; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_do_refs, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2879; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_2 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2879; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L4;
        }
        __pyx_L4:;

     2880:

     2881:             self._is_consolidated = True

        /* "pandas/internals.pyx":2881
     *                 self._set_ref_locs(do_refs=True)
     *
     *             self._is_consolidated = True             # <<<<<<<<<<<<<<
     *             self._known_consolidated = True
     *             self._set_has_sparse()
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_is_consolidated, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2881; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2882:             self._known_consolidated = True

        /* "pandas/internals.pyx":2882
     *
     *             self._is_consolidated = True
     *             self._known_consolidated = True             # <<<<<<<<<<<<<<
     *             self._set_has_sparse()
     *
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_known_consolidated, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2882; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2883:             self._set_has_sparse()

        /* "pandas/internals.pyx":2883
     *             self._is_consolidated = True
     *             self._known_consolidated = True
     *             self._set_has_sparse()             # <<<<<<<<<<<<<<
     *
     *     def get(self, item):
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_has_sparse); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2883; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2883; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2884:

     2885:     def get(self, item):

    /* "pandas/internals.pyx":2885
     *             self._set_has_sparse()
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.items.is_unique:
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_129get(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_129get = {__Pyx_NAMESTR("get"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_129get, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_129get(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("get", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2885; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2885; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2885; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_128get(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_128get(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_v_indexer = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_index = NULL;
      PyObject *__pyx_v_axes = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_v_mgr = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get", 0);

      /* "pandas/internals.pyx":2885
     *             self._set_has_sparse()
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.items.is_unique:
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_index);
      __Pyx_XDECREF(__pyx_v_axes);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_mgr);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2885
     *             self._set_has_sparse()
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.items.is_unique:
     *
     */
      __pyx_tuple__615 = PyTuple_Pack(14, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_indexer, __pyx_n_s__10, __pyx_n_s_block, __pyx_n_s_ref_locs_2, __pyx_n_s_b, __pyx_n_s_loc, __pyx_n_s_values, __pyx_n_s_index, __pyx_n_s_axes, __pyx_n_s_blocks, __pyx_n_s_mgr, __pyx_n_s_i); if (unlikely(!__pyx_tuple__615)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__615);
      __Pyx_GIVEREF(__pyx_tuple__615);

      /* "pandas/internals.pyx":2885
     *             self._set_has_sparse()
     *
     *     def get(self, item):             # <<<<<<<<<<<<<<
     *         if self.items.is_unique:
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_129get, 0, __pyx_n_s_BlockManager_get, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__616)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__616 = (PyObject*)__Pyx_PyCode_New(2, 0, 14, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__615, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get, 2885, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__616)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2886:         if self.items.is_unique:

      /* "pandas/internals.pyx":2886
     *
     *     def get(self, item):
     *         if self.items.is_unique:             # <<<<<<<<<<<<<<
     *
     *             if isnull(item):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2886; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     2887:

     2888:             if isnull(item):

        /* "pandas/internals.pyx":2888
     *         if self.items.is_unique:
     *
     *             if isnull(item):             # <<<<<<<<<<<<<<
     *                 indexer = np.arange(len(self.items))[isnull(self.items)]
     *                 return self.get_for_nan_indexer(indexer)
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (__pyx_t_3) {

     2889:                 indexer = np.arange(len(self.items))[isnull(self.items)]

          /* "pandas/internals.pyx":2889
     *
     *             if isnull(item):
     *                 indexer = np.arange(len(self.items))[isnull(self.items)]             # <<<<<<<<<<<<<<
     *                 return self.get_for_nan_indexer(indexer)
     *
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_GetItem(__pyx_t_4, __pyx_t_1); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2889; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_indexer = __pyx_t_6;
          __pyx_t_6 = 0;

     2890:                 return self.get_for_nan_indexer(indexer)

          /* "pandas/internals.pyx":2890
     *             if isnull(item):
     *                 indexer = np.arange(len(self.items))[isnull(self.items)]
     *                 return self.get_for_nan_indexer(indexer)             # <<<<<<<<<<<<<<
     *
     *             _, block = self._find_block(item)
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_for_nan_indexer); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_indexer);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_indexer);
          __Pyx_GIVEREF(__pyx_v_indexer);
          __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2890; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_r = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L0;
        }

     2891:

     2892:             _, block = self._find_block(item)

        /* "pandas/internals.pyx":2892
     *                 return self.get_for_nan_indexer(indexer)
     *
     *             _, block = self._find_block(item)             # <<<<<<<<<<<<<<
     *             return block.get(item)
     *         else:
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_find_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
          PyObject* sequence = __pyx_t_6;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_4 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_4 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_4);
          #else
          __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          #endif
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_2 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext;
          index = 0; __pyx_t_1 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_1);
          index = 1; __pyx_t_4 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_4)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_4);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_2), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_7 = NULL;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L6_unpacking_done;
          __pyx_L5_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_7 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L6_unpacking_done:;
        }
        __pyx_v__ = __pyx_t_1;
        __pyx_t_1 = 0;
        __pyx_v_block = __pyx_t_4;
        __pyx_t_4 = 0;

     2893:             return block.get(item)

        /* "pandas/internals.pyx":2893
     *
     *             _, block = self._find_block(item)
     *             return block.get(item)             # <<<<<<<<<<<<<<
     *         else:
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_get); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2893; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2893; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2893; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        goto __pyx_L0;
      }
      /*else*/ {

     2894:         else:

     2895:

     2896:             if isnull(item):

        /* "pandas/internals.pyx":2896
     *         else:
     *
     *             if isnull(item):             # <<<<<<<<<<<<<<
     *                 raise ValueError("cannot label index with a null key")
     *
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_isnull); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2896; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (__pyx_t_3) {

     2897:                 raise ValueError("cannot label index with a null key")

          /* "pandas/internals.pyx":2897
     *
     *             if isnull(item):
     *                 raise ValueError("cannot label index with a null key")             # <<<<<<<<<<<<<<
     *
     *             indexer = self.items.get_loc(item)
     */
          __pyx_t_6 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__87, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2897; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_Raise(__pyx_t_6, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2897; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }

      /* "pandas/internals.pyx":2897
     *
     *             if isnull(item):
     *                 raise ValueError("cannot label index with a null key")             # <<<<<<<<<<<<<<
     *
     *             indexer = self.items.get_loc(item)
     */
      __pyx_tuple__87 = PyTuple_Pack(1, __pyx_kp_s_cannot_label_index_with_a_null_k); if (unlikely(!__pyx_tuple__87)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2897; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__87);
      __Pyx_GIVEREF(__pyx_tuple__87);

     2898:

     2899:             indexer = self.items.get_loc(item)

        /* "pandas/internals.pyx":2899
     *                 raise ValueError("cannot label index with a null key")
     *
     *             indexer = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *             ref_locs = np.array(self._set_ref_locs())
     *
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_v_indexer = __pyx_t_1;
        __pyx_t_1 = 0;

     2900:             ref_locs = np.array(self._set_ref_locs())

        /* "pandas/internals.pyx":2900
     *
     *             indexer = self.items.get_loc(item)
     *             ref_locs = np.array(self._set_ref_locs())             # <<<<<<<<<<<<<<
     *
     *             # duplicate index but only a single result
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2900; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_array); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2900; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2900; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2900; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2900; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2900; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_ref_locs = __pyx_t_4;
        __pyx_t_4 = 0;

     2901:

     2902:             # duplicate index but only a single result

     2903:             if com.is_integer(indexer):

        /* "pandas/internals.pyx":2903
     *
     *             # duplicate index but only a single result
     *             if com.is_integer(indexer):             # <<<<<<<<<<<<<<
     *
     *                 b, loc = ref_locs[indexer]
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_is_integer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (__pyx_t_3) {

     2904:

     2905:                 b, loc = ref_locs[indexer]

          /* "pandas/internals.pyx":2905
     *             if com.is_integer(indexer):
     *
     *                 b, loc = ref_locs[indexer]             # <<<<<<<<<<<<<<
     *                 values = [b.iget(loc)]
     *                 index = Index([self.items[indexer]])
     */
          __pyx_t_6 = PyObject_GetItem(__pyx_v_ref_locs, __pyx_v_indexer); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2905; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_6);
          if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
            PyObject* sequence = __pyx_t_6;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2905; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_4 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_4);
            __Pyx_INCREF(__pyx_t_1);
            #else
            __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2905; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2905; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            #endif
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_2 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2905; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext;
            index = 0; __pyx_t_4 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_4)) goto __pyx_L9_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_4);
            index = 1; __pyx_t_1 = __pyx_t_7(__pyx_t_2); if (unlikely(!__pyx_t_1)) goto __pyx_L9_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_1);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_2), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2905; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_7 = NULL;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            goto __pyx_L10_unpacking_done;
            __pyx_L9_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __pyx_t_7 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2905; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L10_unpacking_done:;
          }
          __pyx_v_b = __pyx_t_4;
          __pyx_t_4 = 0;
          __pyx_v_loc = __pyx_t_1;
          __pyx_t_1 = 0;

     2906:                 values = [b.iget(loc)]

          /* "pandas/internals.pyx":2906
     *
     *                 b, loc = ref_locs[indexer]
     *                 values = [b.iget(loc)]             # <<<<<<<<<<<<<<
     *                 index = Index([self.items[indexer]])
     *
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_iget); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_loc);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_loc);
          __Pyx_GIVEREF(__pyx_v_loc);
          __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_v_values = ((PyObject*)__pyx_t_1);
          __pyx_t_1 = 0;

     2907:                 index = Index([self.items[indexer]])

          /* "pandas/internals.pyx":2907
     *                 b, loc = ref_locs[indexer]
     *                 values = [b.iget(loc)]
     *                 index = Index([self.items[indexer]])             # <<<<<<<<<<<<<<
     *
     *             # we have a multiple result, potentially across blocks
     */
          __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_Index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyObject_GetItem(__pyx_t_4, __pyx_v_indexer); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2907; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_6);
          __pyx_t_6 = 0;
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_v_index = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L8;
        }
        /*else*/ {

     2908:

     2909:             # we have a multiple result, potentially across blocks

     2910:             else:

     2911:

     2912:                 values = [block.iget(i) for block, i in ref_locs[indexer]]

          /* "pandas/internals.pyx":2912
     *             else:
     *
     *                 values = [block.iget(i) for block, i in ref_locs[indexer]]             # <<<<<<<<<<<<<<
     *                 index = self.items[indexer]
     *
     */
          __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = PyObject_GetItem(__pyx_v_ref_locs, __pyx_v_indexer); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_6);
          if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
            __pyx_t_1 = __pyx_t_6; __Pyx_INCREF(__pyx_t_1); __pyx_t_5 = 0;
            __pyx_t_8 = NULL;
          } else {
            __pyx_t_5 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          for (;;) {
            if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
              if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_1)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_6 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_6); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
              if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_6); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_6 = PySequence_ITEM(__pyx_t_1, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_6 = __pyx_t_8(__pyx_t_1);
              if (unlikely(!__pyx_t_6)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_6);
            }
            if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
              PyObject* sequence = __pyx_t_6;
              #if CYTHON_COMPILING_IN_CPYTHON
              Py_ssize_t size = Py_SIZE(sequence);
              #else
              Py_ssize_t size = PySequence_Size(sequence);
              #endif
              if (unlikely(size != 2)) {
                if (size > 2) __Pyx_RaiseTooManyValuesError(2);
                else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              #if CYTHON_COMPILING_IN_CPYTHON
              if (likely(PyTuple_CheckExact(sequence))) {
                __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
                __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1);
              } else {
                __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
                __pyx_t_9 = PyList_GET_ITEM(sequence, 1);
              }
              __Pyx_INCREF(__pyx_t_2);
              __Pyx_INCREF(__pyx_t_9);
              #else
              __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_9);
              #endif
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            } else {
              Py_ssize_t index = -1;
              __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_10);
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              __pyx_t_7 = Py_TYPE(__pyx_t_10)->tp_iternext;
              index = 0; __pyx_t_2 = __pyx_t_7(__pyx_t_10); if (unlikely(!__pyx_t_2)) goto __pyx_L13_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_2);
              index = 1; __pyx_t_9 = __pyx_t_7(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L13_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_9);
              if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_7 = NULL;
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              goto __pyx_L14_unpacking_done;
              __pyx_L13_unpacking_failed:;
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              __pyx_t_7 = NULL;
              if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_L14_unpacking_done:;
            }
            __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_2);
            __pyx_t_2 = 0;
            __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_9);
            __pyx_t_9 = 0;
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_iget); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_INCREF(__pyx_v_i);
            PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            __pyx_t_2 = PyObject_Call(__pyx_t_6, __pyx_t_9, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_2))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          }
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_values = ((PyObject*)__pyx_t_4);
          __pyx_t_4 = 0;

     2913:                 index = self.items[indexer]

          /* "pandas/internals.pyx":2913
     *
     *                 values = [block.iget(i) for block, i in ref_locs[indexer]]
     *                 index = self.items[indexer]             # <<<<<<<<<<<<<<
     *
     *             # create and return a new block manager
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2913; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_1 = PyObject_GetItem(__pyx_t_4, __pyx_v_indexer); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2913; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_v_index = __pyx_t_1;
          __pyx_t_1 = 0;
        }
        __pyx_L8:;

     2914:

     2915:             # create and return a new block manager

     2916:             axes = [index] + self.axes[1:]

        /* "pandas/internals.pyx":2916
     *
     *             # create and return a new block manager
     *             axes = [index] + self.axes[1:]             # <<<<<<<<<<<<<<
     *             blocks = form_blocks(values, index, axes)
     *             mgr = BlockManager(blocks, axes)
     */
        __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2916; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_index);
        PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_index);
        __Pyx_GIVEREF(__pyx_v_index);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2916; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_4, 1, 0, NULL, NULL, &__pyx_slice__88, 1, 0, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2916; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyNumber_Add(__pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2916; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_axes = __pyx_t_4;
        __pyx_t_4 = 0;

      /* "pandas/internals.pyx":2916
     *
     *             # create and return a new block manager
     *             axes = [index] + self.axes[1:]             # <<<<<<<<<<<<<<
     *             blocks = form_blocks(values, index, axes)
     *             mgr = BlockManager(blocks, axes)
     */
      __pyx_slice__88 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__88)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2916; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__88);
      __Pyx_GIVEREF(__pyx_slice__88);

     2917:             blocks = form_blocks(values, index, axes)

        /* "pandas/internals.pyx":2917
     *             # create and return a new block manager
     *             axes = [index] + self.axes[1:]
     *             blocks = form_blocks(values, index, axes)             # <<<<<<<<<<<<<<
     *             mgr = BlockManager(blocks, axes)
     *             mgr._consolidate_inplace()
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_form_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2917; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2917; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        __Pyx_INCREF(__pyx_v_index);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_index);
        __Pyx_GIVEREF(__pyx_v_index);
        __Pyx_INCREF(__pyx_v_axes);
        PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_axes);
        __Pyx_GIVEREF(__pyx_v_axes);
        __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2917; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_blocks = __pyx_t_1;
        __pyx_t_1 = 0;

     2918:             mgr = BlockManager(blocks, axes)

        /* "pandas/internals.pyx":2918
     *             axes = [index] + self.axes[1:]
     *             blocks = form_blocks(values, index, axes)
     *             mgr = BlockManager(blocks, axes)             # <<<<<<<<<<<<<<
     *             mgr._consolidate_inplace()
     *             return mgr
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_BlockManager); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2918; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2918; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_blocks);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_blocks);
        __Pyx_GIVEREF(__pyx_v_blocks);
        __Pyx_INCREF(__pyx_v_axes);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_axes);
        __Pyx_GIVEREF(__pyx_v_axes);
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2918; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_mgr = __pyx_t_4;
        __pyx_t_4 = 0;

     2919:             mgr._consolidate_inplace()

        /* "pandas/internals.pyx":2919
     *             blocks = form_blocks(values, index, axes)
     *             mgr = BlockManager(blocks, axes)
     *             mgr._consolidate_inplace()             # <<<<<<<<<<<<<<
     *             return mgr
     *
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_mgr, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2920:             return mgr

        /* "pandas/internals.pyx":2920
     *             mgr = BlockManager(blocks, axes)
     *             mgr._consolidate_inplace()
     *             return mgr             # <<<<<<<<<<<<<<
     *
     *     def iget(self, i):
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_mgr);
        __pyx_r = __pyx_v_mgr;
        goto __pyx_L0;
      }

     2921:

     2922:     def iget(self, i):

    /* "pandas/internals.pyx":2922
     *             return mgr
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         item = self.items[i]
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_131iget(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_131iget = {__Pyx_NAMESTR("iget"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_131iget, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_131iget(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_i = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("iget (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_i,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_i)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("iget", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2922; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "iget") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2922; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_i = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("iget", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2922; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.iget", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_130iget(__pyx_self, __pyx_v_self, __pyx_v_i);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_130iget(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_i) {
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("iget", 0);

      /* "pandas/internals.pyx":2922
     *             return mgr
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         item = self.items[i]
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.BlockManager.iget", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2922
     *             return mgr
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         item = self.items[i]
     *
     */
      __pyx_tuple__617 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_i, __pyx_n_s_item, __pyx_n_s_ref_locs_2, __pyx_n_s_b, __pyx_n_s_loc); if (unlikely(!__pyx_tuple__617)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__617);
      __Pyx_GIVEREF(__pyx_tuple__617);

      /* "pandas/internals.pyx":2922
     *             return mgr
     *
     *     def iget(self, i):             # <<<<<<<<<<<<<<
     *         item = self.items[i]
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_131iget, 0, __pyx_n_s_BlockManager_iget, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__618)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_iget, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__618 = (PyObject*)__Pyx_PyCode_New(2, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__617, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_iget, 2922, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__618)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2923:         item = self.items[i]

      /* "pandas/internals.pyx":2923
     *
     *     def iget(self, i):
     *         item = self.items[i]             # <<<<<<<<<<<<<<
     *
     *         # unique
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2923; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_i); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2923; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_item = __pyx_t_2;
      __pyx_t_2 = 0;

     2924:

     2925:         # unique

     2926:         if self.items.is_unique:

      /* "pandas/internals.pyx":2926
     *
     *         # unique
     *         if self.items.is_unique:             # <<<<<<<<<<<<<<
     *             if notnull(item):
     *                 return self.get(item)
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2926; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2926; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2926; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_3) {

     2927:             if notnull(item):

        /* "pandas/internals.pyx":2927
     *         # unique
     *         if self.items.is_unique:
     *             if notnull(item):             # <<<<<<<<<<<<<<
     *                 return self.get(item)
     *             return self.get_for_nan_indexer(i)
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_notnull); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2927; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2927; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2927; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2927; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (__pyx_t_3) {

     2928:                 return self.get(item)

          /* "pandas/internals.pyx":2928
     *         if self.items.is_unique:
     *             if notnull(item):
     *                 return self.get(item)             # <<<<<<<<<<<<<<
     *             return self.get_for_nan_indexer(i)
     *
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_r = __pyx_t_1;
          __pyx_t_1 = 0;
          goto __pyx_L0;
        }

     2929:             return self.get_for_nan_indexer(i)

        /* "pandas/internals.pyx":2929
     *             if notnull(item):
     *                 return self.get(item)
     *             return self.get_for_nan_indexer(i)             # <<<<<<<<<<<<<<
     *
     *         ref_locs = self._set_ref_locs()
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_get_for_nan_indexer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2929; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2929; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_i);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_i);
        __Pyx_GIVEREF(__pyx_v_i);
        __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2929; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

     2930:

     2931:         ref_locs = self._set_ref_locs()

      /* "pandas/internals.pyx":2931
     *             return self.get_for_nan_indexer(i)
     *
     *         ref_locs = self._set_ref_locs()             # <<<<<<<<<<<<<<
     *         b, loc = ref_locs[i]
     *         return b.iget(loc)
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2931; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_2 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2931; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_ref_locs = __pyx_t_2;
      __pyx_t_2 = 0;

     2932:         b, loc = ref_locs[i]

      /* "pandas/internals.pyx":2932
     *
     *         ref_locs = self._set_ref_locs()
     *         b, loc = ref_locs[i]             # <<<<<<<<<<<<<<
     *         return b.iget(loc)
     *
     */
      __pyx_t_2 = PyObject_GetItem(__pyx_v_ref_locs, __pyx_v_i); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2932; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
        PyObject* sequence = __pyx_t_2;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2932; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_4 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2932; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2932; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_5 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2932; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
        index = 0; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L5_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_4);
        index = 1; __pyx_t_1 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2932; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = NULL;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L6_unpacking_done;
        __pyx_L5_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2932; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L6_unpacking_done:;
      }
      __pyx_v_b = __pyx_t_4;
      __pyx_t_4 = 0;
      __pyx_v_loc = __pyx_t_1;
      __pyx_t_1 = 0;

     2933:         return b.iget(loc)

      /* "pandas/internals.pyx":2933
     *         ref_locs = self._set_ref_locs()
     *         b, loc = ref_locs[i]
     *         return b.iget(loc)             # <<<<<<<<<<<<<<
     *
     *     def get_for_nan_indexer(self, indexer):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_iget); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2933; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     2934:

     2935:     def get_for_nan_indexer(self, indexer):

    /* "pandas/internals.pyx":2935
     *         return b.iget(loc)
     *
     *     def get_for_nan_indexer(self, indexer):             # <<<<<<<<<<<<<<
     *
     *         # allow a single nan location indexer
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_133get_for_nan_indexer(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_133get_for_nan_indexer = {__Pyx_NAMESTR("get_for_nan_indexer"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_133get_for_nan_indexer, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_133get_for_nan_indexer(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_for_nan_indexer (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("get_for_nan_indexer", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2935; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_for_nan_indexer") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2935; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_for_nan_indexer", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2935; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_for_nan_indexer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_132get_for_nan_indexer(__pyx_self, __pyx_v_self, __pyx_v_indexer);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_132get_for_nan_indexer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer) {
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_for_nan_indexer", 0);
      __Pyx_INCREF(__pyx_v_indexer);

      /* "pandas/internals.pyx":2935
     *         return b.iget(loc)
     *
     *     def get_for_nan_indexer(self, indexer):             # <<<<<<<<<<<<<<
     *
     *         # allow a single nan location indexer
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_for_nan_indexer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2935
     *         return b.iget(loc)
     *
     *     def get_for_nan_indexer(self, indexer):             # <<<<<<<<<<<<<<
     *
     *         # allow a single nan location indexer
     */
      __pyx_tuple__619 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_ref_locs_2, __pyx_n_s_b, __pyx_n_s_loc); if (unlikely(!__pyx_tuple__619)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2935; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__619);
      __Pyx_GIVEREF(__pyx_tuple__619);

      /* "pandas/internals.pyx":2935
     *         return b.iget(loc)
     *
     *     def get_for_nan_indexer(self, indexer):             # <<<<<<<<<<<<<<
     *
     *         # allow a single nan location indexer
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_133get_for_nan_indexer, 0, __pyx_n_s_BlockManager_get_for_nan_indexer, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__620)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2935; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_for_nan_indexer, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2935; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__620 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__619, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_for_nan_indexer, 2935, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__620)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2935; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2936:

     2937:         # allow a single nan location indexer

     2938:         if not np.isscalar(indexer):

      /* "pandas/internals.pyx":2938
     *
     *         # allow a single nan location indexer
     *         if not np.isscalar(indexer):             # <<<<<<<<<<<<<<
     *             if len(indexer) == 1:
     *                 indexer = indexer.item()
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2938; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_isscalar); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2938; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2938; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2938; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2938; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {

     2939:             if len(indexer) == 1:

        /* "pandas/internals.pyx":2939
     *         # allow a single nan location indexer
     *         if not np.isscalar(indexer):
     *             if len(indexer) == 1:             # <<<<<<<<<<<<<<
     *                 indexer = indexer.item()
     *             else:
     */
        __pyx_t_6 = PyObject_Length(__pyx_v_indexer); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2939; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = ((__pyx_t_6 == 1) != 0);
        if (__pyx_t_5) {

     2940:                 indexer = indexer.item()

          /* "pandas/internals.pyx":2940
     *         if not np.isscalar(indexer):
     *             if len(indexer) == 1:
     *                 indexer = indexer.item()             # <<<<<<<<<<<<<<
     *             else:
     *                 raise ValueError("cannot label index with a null key")
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_indexer, __pyx_n_s_item); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_1);
          __pyx_t_1 = 0;
          goto __pyx_L4;
        }
        /*else*/ {

     2941:             else:

     2942:                 raise ValueError("cannot label index with a null key")

          /* "pandas/internals.pyx":2942
     *                 indexer = indexer.item()
     *             else:
     *                 raise ValueError("cannot label index with a null key")             # <<<<<<<<<<<<<<
     *
     *         # take a nan indexer and return the values
     */
          __pyx_t_1 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__89, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2942; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_Raise(__pyx_t_1, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2942; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __pyx_L4:;
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":2942
     *                 indexer = indexer.item()
     *             else:
     *                 raise ValueError("cannot label index with a null key")             # <<<<<<<<<<<<<<
     *
     *         # take a nan indexer and return the values
     */
      __pyx_tuple__89 = PyTuple_Pack(1, __pyx_kp_s_cannot_label_index_with_a_null_k); if (unlikely(!__pyx_tuple__89)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2942; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__89);
      __Pyx_GIVEREF(__pyx_tuple__89);

     2943:

     2944:         # take a nan indexer and return the values

     2945:         ref_locs = self._set_ref_locs(do_refs='force')

      /* "pandas/internals.pyx":2945
     *
     *         # take a nan indexer and return the values
     *         ref_locs = self._set_ref_locs(do_refs='force')             # <<<<<<<<<<<<<<
     *         b, loc = ref_locs[indexer]
     *         return b.iget(loc)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2945; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2945; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_do_refs, __pyx_n_s_force) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2945; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2945; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_ref_locs = __pyx_t_2;
      __pyx_t_2 = 0;

     2946:         b, loc = ref_locs[indexer]

      /* "pandas/internals.pyx":2946
     *         # take a nan indexer and return the values
     *         ref_locs = self._set_ref_locs(do_refs='force')
     *         b, loc = ref_locs[indexer]             # <<<<<<<<<<<<<<
     *         return b.iget(loc)
     *
     */
      __pyx_t_2 = PyObject_GetItem(__pyx_v_ref_locs, __pyx_v_indexer); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2946; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
        PyObject* sequence = __pyx_t_2;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_7 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
        index = 0; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L5_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        index = 1; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = NULL;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L6_unpacking_done;
        __pyx_L5_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L6_unpacking_done:;
      }
      __pyx_v_b = __pyx_t_3;
      __pyx_t_3 = 0;
      __pyx_v_loc = __pyx_t_1;
      __pyx_t_1 = 0;

     2947:         return b.iget(loc)

      /* "pandas/internals.pyx":2947
     *         ref_locs = self._set_ref_locs(do_refs='force')
     *         b, loc = ref_locs[indexer]
     *         return b.iget(loc)             # <<<<<<<<<<<<<<
     *
     *     def get_scalar(self, tup):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_iget); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     2948:

     2949:     def get_scalar(self, tup):

    /* "pandas/internals.pyx":2949
     *         return b.iget(loc)
     *
     *     def get_scalar(self, tup):             # <<<<<<<<<<<<<<
     *         """
     *         Retrieve single item
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_135get_scalar(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_134get_scalar[] = "\n        Retrieve single item\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_135get_scalar = {__Pyx_NAMESTR("get_scalar"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_135get_scalar, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_134get_scalar)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_135get_scalar(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_tup = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_scalar (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_tup,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tup)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("get_scalar", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2949; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_scalar") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2949; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_tup = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_scalar", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2949; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_scalar", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_134get_scalar(__pyx_self, __pyx_v_self, __pyx_v_tup);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_10get_scalar_2generator4(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":2949
     *         return b.iget(loc)
     *
     *     def get_scalar(self, tup):             # <<<<<<<<<<<<<<
     *         """
     *         Retrieve single item
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_134get_scalar(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_tup) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_15_get_scalar *__pyx_cur_scope;
      PyObject *__pyx_v_item = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_item_loc = NULL;
      PyObject *__pyx_v_full_loc = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_scalar", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_15_get_scalar *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_15_get_scalar(__pyx_ptype_6pandas_9internals___pyx_scope_struct_15_get_scalar, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
      __pyx_cur_scope->__pyx_v_tup = __pyx_v_tup;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_tup);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_tup);

      /* "pandas/internals.pyx":2949
     *         return b.iget(loc)
     *
     *     def get_scalar(self, tup):             # <<<<<<<<<<<<<<
     *         """
     *         Retrieve single item
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_scalar", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_item_loc);
      __Pyx_XDECREF(__pyx_v_full_loc);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2949
     *         return b.iget(loc)
     *
     *     def get_scalar(self, tup):             # <<<<<<<<<<<<<<
     *         """
     *         Retrieve single item
     */
      __pyx_tuple__621 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_tup, __pyx_n_s_item, __pyx_n_s__10, __pyx_n_s_blk, __pyx_n_s_item_loc, __pyx_n_s_full_loc, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__621)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__621);
      __Pyx_GIVEREF(__pyx_tuple__621);

      /* "pandas/internals.pyx":2949
     *         return b.iget(loc)
     *
     *     def get_scalar(self, tup):             # <<<<<<<<<<<<<<
     *         """
     *         Retrieve single item
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_135get_scalar, 0, __pyx_n_s_BlockManager_get_scalar, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__622)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_scalar, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__622 = (PyObject*)__Pyx_PyCode_New(2, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__621, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_scalar, 2949, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__622)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":2949
     *         return b.iget(loc)
     *
     *     def get_scalar(self, tup):             # <<<<<<<<<<<<<<
     *         """
     *         Retrieve single item
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_15_get_scalar {
      PyObject_HEAD
      PyObject *__pyx_v_self;
      PyObject *__pyx_v_tup;
    };

     2950:         """

     2951:         Retrieve single item

     2952:         """

     2953:         item = tup[0]

      /* "pandas/internals.pyx":2953
     *         Retrieve single item
     *         """
     *         item = tup[0]             # <<<<<<<<<<<<<<
     *         _, blk = self._find_block(item)
     *
     */
      __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_tup, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2953; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_item = __pyx_t_1;
      __pyx_t_1 = 0;

     2954:         _, blk = self._find_block(item)

      /* "pandas/internals.pyx":2954
     *         """
     *         item = tup[0]
     *         _, blk = self._find_block(item)             # <<<<<<<<<<<<<<
     *
     *         # this could obviously be seriously sped up in cython
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_find_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
        PyObject* sequence = __pyx_t_3;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v__ = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_v_blk = __pyx_t_1;
      __pyx_t_1 = 0;

     2955:

     2956:         # this could obviously be seriously sped up in cython

     2957:         item_loc = blk.items.get_loc(item),

      /* "pandas/internals.pyx":2957
     *
     *         # this could obviously be seriously sped up in cython
     *         item_loc = blk.items.get_loc(item),             # <<<<<<<<<<<<<<
     *         full_loc = item_loc + tuple(ax.get_loc(x)
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_v_item_loc = ((PyObject*)__pyx_t_3);
      __pyx_t_3 = 0;

     2958:         full_loc = item_loc + tuple(ax.get_loc(x)

    /* "pandas/internals.pyx":2958
     *         # this could obviously be seriously sped up in cython
     *         item_loc = blk.items.get_loc(item),
     *         full_loc = item_loc + tuple(ax.get_loc(x)             # <<<<<<<<<<<<<<
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))
     *         return blk.values[full_loc]
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_10get_scalar_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_16_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_16_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_16_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_16_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_15_get_scalar *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_10get_scalar_2generator4, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.get_scalar.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_10get_scalar_2generator4(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":2958
     *         # this could obviously be seriously sped up in cython
     *         item_loc = blk.items.get_loc(item),
     *         full_loc = item_loc + tuple(ax.get_loc(x)             # <<<<<<<<<<<<<<
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))
     *         return blk.values[full_loc]
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_ax, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_x);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_cur_scope->__pyx_v_x);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_x);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        __Pyx_XGIVEREF(__pyx_t_4);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_4;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_5;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_6;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L8_resume_from_yield:;
        __pyx_t_4 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_4);
        __pyx_t_5 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_6 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

      /* "pandas/internals.pyx":2958
     *         # this could obviously be seriously sped up in cython
     *         item_loc = blk.items.get_loc(item),
     *         full_loc = item_loc + tuple(ax.get_loc(x)             # <<<<<<<<<<<<<<
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))
     *         return blk.values[full_loc]
     */
      __pyx_t_3 = __pyx_pf_6pandas_9internals_12BlockManager_10get_scalar_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyNumber_Add(__pyx_v_item_loc, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_full_loc = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

    /* "pandas/internals.pyx":2958
     *         # this could obviously be seriously sped up in cython
     *         item_loc = blk.items.get_loc(item),
     *         full_loc = item_loc + tuple(ax.get_loc(x)             # <<<<<<<<<<<<<<
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))
     *         return blk.values[full_loc]
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_16_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_15_get_scalar *__pyx_outer_scope;
      PyObject *__pyx_v_ax;
      PyObject *__pyx_v_x;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     2959:                                     for ax, x in zip(self.axes[1:], tup[1:]))

      /* "pandas/internals.pyx":2959
     *         item_loc = blk.items.get_loc(item),
     *         full_loc = item_loc + tuple(ax.get_loc(x)
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))             # <<<<<<<<<<<<<<
     *         return blk.values[full_loc]
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetSlice(__pyx_t_2, 1, 0, NULL, NULL, &__pyx_slice__90, 1, 0, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_tup)) { __Pyx_RaiseClosureNameError("tup"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }

      /* "pandas/internals.pyx":2959
     *         item_loc = blk.items.get_loc(item),
     *         full_loc = item_loc + tuple(ax.get_loc(x)
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))             # <<<<<<<<<<<<<<
     *         return blk.values[full_loc]
     *
     */
      __pyx_slice__90 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__90)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__90);
      __Pyx_GIVEREF(__pyx_slice__90);
      __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_tup, 1, 0, NULL, NULL, &__pyx_slice__91, 1, 0, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_3 = 0;
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_4 = __pyx_t_2; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
          PyObject* sequence = __pyx_t_2;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_3);
          #else
          __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          #endif
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_7 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
          index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_1);
          index = 1; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L7_unpacking_done;
          __pyx_L6_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L7_unpacking_done:;
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_ax);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_ax, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_x);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_x, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
      __pyx_slice__91 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__91)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__91);
      __Pyx_GIVEREF(__pyx_slice__91);

     2960:         return blk.values[full_loc]

      /* "pandas/internals.pyx":2960
     *         full_loc = item_loc + tuple(ax.get_loc(x)
     *                                     for ax, x in zip(self.axes[1:], tup[1:]))
     *         return blk.values[full_loc]             # <<<<<<<<<<<<<<
     *
     *     def delete(self, item):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2960; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_GetItem(__pyx_t_2, __pyx_v_full_loc); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2960; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     2961:

     2962:     def delete(self, item):

    /* "pandas/internals.pyx":2962
     *         return blk.values[full_loc]
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *
     *         is_unique = self.items.is_unique
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_137delete(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_137delete = {__Pyx_NAMESTR("delete"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_137delete, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_137delete(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("delete (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("delete", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2962; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "delete") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2962; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("delete", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2962; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.delete", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_136delete(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_136delete(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_v_is_unique = NULL;
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("delete", 0);

      /* "pandas/internals.pyx":2962
     *         return blk.values[full_loc]
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *
     *         is_unique = self.items.is_unique
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.delete", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_is_unique);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2962
     *         return blk.values[full_loc]
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *
     *         is_unique = self.items.is_unique
     */
      __pyx_tuple__623 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_is_unique, __pyx_n_s_loc, __pyx_n_s_new_items); if (unlikely(!__pyx_tuple__623)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__623);
      __Pyx_GIVEREF(__pyx_tuple__623);

      /* "pandas/internals.pyx":2962
     *         return blk.values[full_loc]
     *
     *     def delete(self, item):             # <<<<<<<<<<<<<<
     *
     *         is_unique = self.items.is_unique
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_137delete, 0, __pyx_n_s_BlockManager_delete, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__624)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_delete, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__624 = (PyObject*)__Pyx_PyCode_New(2, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__623, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_delete, 2962, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__624)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2962; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2963:

     2964:         is_unique = self.items.is_unique

      /* "pandas/internals.pyx":2964
     *     def delete(self, item):
     *
     *         is_unique = self.items.is_unique             # <<<<<<<<<<<<<<
     *         loc = self.items.get_loc(item)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2964; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2964; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_is_unique = __pyx_t_2;
      __pyx_t_2 = 0;

     2965:         loc = self.items.get_loc(item)

      /* "pandas/internals.pyx":2965
     *
     *         is_unique = self.items.is_unique
     *         loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *
     *         # dupe keys may return mask
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2965; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2965; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2965; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2965; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_loc = __pyx_t_3;
      __pyx_t_3 = 0;

     2966:

     2967:         # dupe keys may return mask

     2968:         loc = _possibly_convert_to_indexer(loc)

      /* "pandas/internals.pyx":2968
     *
     *         # dupe keys may return mask
     *         loc = _possibly_convert_to_indexer(loc)             # <<<<<<<<<<<<<<
     *         self._delete_from_all_blocks(loc, item)
     *
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_possibly_convert_to_indexer); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2968; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2968; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2968; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_loc, __pyx_t_1);
      __pyx_t_1 = 0;

     2969:         self._delete_from_all_blocks(loc, item)

      /* "pandas/internals.pyx":2969
     *         # dupe keys may return mask
     *         loc = _possibly_convert_to_indexer(loc)
     *         self._delete_from_all_blocks(loc, item)             # <<<<<<<<<<<<<<
     *
     *         # _ref_locs, and _items_map are good here
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_delete_from_all_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2970:

     2971:         # _ref_locs, and _items_map are good here

     2972:         new_items = self.items.delete(loc)

      /* "pandas/internals.pyx":2972
     *
     *         # _ref_locs, and _items_map are good here
     *         new_items = self.items.delete(loc)             # <<<<<<<<<<<<<<
     *         self.set_items_norename(new_items)
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_delete); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_new_items = __pyx_t_1;
      __pyx_t_1 = 0;

     2973:         self.set_items_norename(new_items)

      /* "pandas/internals.pyx":2973
     *         # _ref_locs, and _items_map are good here
     *         new_items = self.items.delete(loc)
     *         self.set_items_norename(new_items)             # <<<<<<<<<<<<<<
     *
     *         self._known_consolidated = False
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_items_norename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2973; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2973; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_items);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_items);
      __Pyx_GIVEREF(__pyx_v_new_items);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2973; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     2974:

     2975:         self._known_consolidated = False

      /* "pandas/internals.pyx":2975
     *         self.set_items_norename(new_items)
     *
     *         self._known_consolidated = False             # <<<<<<<<<<<<<<
     *
     *         if not is_unique:
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_known_consolidated, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2976:

     2977:         if not is_unique:

      /* "pandas/internals.pyx":2977
     *         self._known_consolidated = False
     *
     *         if not is_unique:             # <<<<<<<<<<<<<<
     *             self._consolidate_inplace()
     *
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2977; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {

     2978:             self._consolidate_inplace()

        /* "pandas/internals.pyx":2978
     *
     *         if not is_unique:
     *             self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *
     *     def set(self, item, value, check=False):
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2978; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2978; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     2979:

     2980:     def set(self, item, value, check=False):

    /* "pandas/internals.pyx":2980
     *             self._consolidate_inplace()
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Set new item in-place. Does not consolidate. Adds new Block if not
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_139set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_138set[] = "\n        Set new item in-place. Does not consolidate. Adds new Block if not\n        contained in the current set of items\n        if check, then validate that we are not setting the same data in-place\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_139set = {__Pyx_NAMESTR("set"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_139set, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_138set)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_139set(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_check = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,&__pyx_n_s_value,&__pyx_n_s_check,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
        __pyx_v_value = values[2];
        __pyx_v_check = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_138set(__pyx_self, __pyx_v_self, __pyx_v_item, __pyx_v_value, __pyx_v_check);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":2980
     *             self._consolidate_inplace()
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Set new item in-place. Does not consolidate. Adds new Block if not
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_138set(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value, PyObject *__pyx_v_check) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_17_set *__pyx_cur_scope;
      PyObject *__pyx_v__set_item = 0;
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_v_subset = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_l = NULL;
      PyObject *__pyx_v_k = NULL;
      PyObject *__pyx_v_arr = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_17_set *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_17_set(__pyx_ptype_6pandas_9internals___pyx_scope_struct_17_set, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
      __pyx_cur_scope->__pyx_v_value = __pyx_v_value;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
      __pyx_cur_scope->__pyx_v_check = __pyx_v_check;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_check);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_check);
      __Pyx_INCREF(__pyx_v_item);

      /* "pandas/internals.pyx":2980
     *             self._consolidate_inplace()
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Set new item in-place. Does not consolidate. Adds new Block if not
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_XDECREF(__pyx_t_15);
      __Pyx_XDECREF(__pyx_t_16);
      __Pyx_XDECREF(__pyx_t_17);
      __Pyx_AddTraceback("pandas.internals.BlockManager.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v__set_item);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_subset);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_l);
      __Pyx_XDECREF(__pyx_v_k);
      __Pyx_XDECREF(__pyx_v_arr);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2980
     *             self._consolidate_inplace()
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Set new item in-place. Does not consolidate. Adds new Block if not
     */
      __pyx_tuple__625 = PyTuple_Pack(12, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_value, __pyx_n_s_check, __pyx_n_s_set_item, __pyx_n_s_set_item, __pyx_n_s_loc, __pyx_n_s_subset, __pyx_n_s_i, __pyx_n_s_l, __pyx_n_s_k, __pyx_n_s_arr); if (unlikely(!__pyx_tuple__625)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__625);
      __Pyx_GIVEREF(__pyx_tuple__625);
      __pyx_codeobj__626 = (PyObject*)__Pyx_PyCode_New(4, 0, 12, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__625, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set, 2980, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__626)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":2980
     *             self._consolidate_inplace()
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Set new item in-place. Does not consolidate. Adds new Block if not
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_139set, 0, __pyx_n_s_BlockManager_set, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__626)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__627);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__627 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__627)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__627);
      __Pyx_GIVEREF(__pyx_tuple__627);

    /* "pandas/internals.pyx":2980
     *             self._consolidate_inplace()
     *
     *     def set(self, item, value, check=False):             # <<<<<<<<<<<<<<
     *         """
     *         Set new item in-place. Does not consolidate. Adds new Block if not
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_17_set {
      PyObject_HEAD
      PyObject *__pyx_v_check;
      PyObject *__pyx_v_self;
      PyObject *__pyx_v_value;
    };

     2981:         """

     2982:         Set new item in-place. Does not consolidate. Adds new Block if not

     2983:         contained in the current set of items

     2984:         if check, then validate that we are not setting the same data in-place

     2985:         """

     2986:         if not isinstance(value, SparseArray):

      /* "pandas/internals.pyx":2986
     *         if check, then validate that we are not setting the same data in-place
     *         """
     *         if not isinstance(value, SparseArray):             # <<<<<<<<<<<<<<
     *             if value.ndim == self.ndim - 1:
     *                 value = value.reshape((1,) + value.shape)
     */
      __pyx_t_1 = __pyx_cur_scope->__pyx_v_value;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseArray); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2986; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_IsInstance(__pyx_t_1, __pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2986; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = ((!(__pyx_t_3 != 0)) != 0);
      if (__pyx_t_4) {

     2987:             if value.ndim == self.ndim - 1:

        /* "pandas/internals.pyx":2987
     *         """
     *         if not isinstance(value, SparseArray):
     *             if value.ndim == self.ndim - 1:             # <<<<<<<<<<<<<<
     *                 value = value.reshape((1,) + value.shape)
     *             if value.shape[1:] != self.shape[1:]:
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_value, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyNumber_Subtract(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_RichCompare(__pyx_t_2, __pyx_t_5, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2987; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (__pyx_t_4) {

     2988:                 value = value.reshape((1,) + value.shape)

          /* "pandas/internals.pyx":2988
     *         if not isinstance(value, SparseArray):
     *             if value.ndim == self.ndim - 1:
     *                 value = value.reshape((1,) + value.shape)             # <<<<<<<<<<<<<<
     *             if value.shape[1:] != self.shape[1:]:
     *                 raise AssertionError('Shape of new values must be compatible '
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_value, __pyx_n_s_reshape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2988; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_value, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2988; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_2 = PyNumber_Add(__pyx_tuple__92, __pyx_t_5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2988; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2988; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
          __Pyx_GIVEREF(__pyx_t_2);
          __pyx_t_2 = 0;
          __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2988; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_value);
          __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_value, __pyx_t_2);
          __Pyx_GIVEREF(__pyx_t_2);
          __pyx_t_2 = 0;
          goto __pyx_L4;
        }
        __pyx_L4:;

      /* "pandas/internals.pyx":2988
     *         if not isinstance(value, SparseArray):
     *             if value.ndim == self.ndim - 1:
     *                 value = value.reshape((1,) + value.shape)             # <<<<<<<<<<<<<<
     *             if value.shape[1:] != self.shape[1:]:
     *                 raise AssertionError('Shape of new values must be compatible '
     */
      __pyx_tuple__92 = PyTuple_Pack(1, __pyx_int_1); if (unlikely(!__pyx_tuple__92)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2988; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__92);
      __Pyx_GIVEREF(__pyx_tuple__92);

     2989:             if value.shape[1:] != self.shape[1:]:

        /* "pandas/internals.pyx":2989
     *             if value.ndim == self.ndim - 1:
     *                 value = value.reshape((1,) + value.shape)
     *             if value.shape[1:] != self.shape[1:]:             # <<<<<<<<<<<<<<
     *                 raise AssertionError('Shape of new values must be compatible '
     *                                      'with manager shape')
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_value, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = __Pyx_PyObject_GetSlice(__pyx_t_2, 1, 0, NULL, NULL, &__pyx_slice__93, 1, 0, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

      /* "pandas/internals.pyx":2989
     *             if value.ndim == self.ndim - 1:
     *                 value = value.reshape((1,) + value.shape)
     *             if value.shape[1:] != self.shape[1:]:             # <<<<<<<<<<<<<<
     *                 raise AssertionError('Shape of new values must be compatible '
     *                                      'with manager shape')
     */
      __pyx_slice__93 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__93)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__93);
      __Pyx_GIVEREF(__pyx_slice__93);
        __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_t_2, 1, 0, NULL, NULL, &__pyx_slice__94, 1, 0, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_RichCompare(__pyx_t_5, __pyx_t_1, Py_NE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (__pyx_t_4) {
      __pyx_slice__94 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__94)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__94);
      __Pyx_GIVEREF(__pyx_slice__94);

     2990:                 raise AssertionError('Shape of new values must be compatible '

          /* "pandas/internals.pyx":2990
     *                 value = value.reshape((1,) + value.shape)
     *             if value.shape[1:] != self.shape[1:]:
     *                 raise AssertionError('Shape of new values must be compatible '             # <<<<<<<<<<<<<<
     *                                      'with manager shape')
     *
     */
          __pyx_t_2 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__95, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_Raise(__pyx_t_2, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":2990
     *                 value = value.reshape((1,) + value.shape)
     *             if value.shape[1:] != self.shape[1:]:
     *                 raise AssertionError('Shape of new values must be compatible '             # <<<<<<<<<<<<<<
     *                                      'with manager shape')
     *
     */
      __pyx_tuple__95 = PyTuple_Pack(1, __pyx_kp_s_Shape_of_new_values_must_be_comp); if (unlikely(!__pyx_tuple__95)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__95);
      __Pyx_GIVEREF(__pyx_tuple__95);

     2991:                                      'with manager shape')

     2992:

     2993:         def _set_item(item, arr):

    /* "pandas/internals.pyx":2993
     *                                      'with manager shape')
     *
     *         def _set_item(item, arr):             # <<<<<<<<<<<<<<
     *             i, block = self._find_block(item)
     *             if not block.should_store(value):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_3set_1_set_item(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_3set_1_set_item = {__Pyx_NAMESTR("_set_item"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_3set_1_set_item, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_3set_1_set_item(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_arr = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_item (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_item,&__pyx_n_s_arr,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_arr)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_set_item", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2993; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_set_item") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2993; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_item = values[0];
        __pyx_v_arr = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_set_item", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2993; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.set._set_item", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_3set__set_item(__pyx_self, __pyx_v_item, __pyx_v_arr);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_3set__set_item(PyObject *__pyx_self, PyObject *__pyx_v_item, PyObject *__pyx_v_arr) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_17_set *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_17_set *__pyx_outer_scope;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_set_item", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_17_set *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":2993
     *                                      'with manager shape')
     *
     *         def _set_item(item, arr):             # <<<<<<<<<<<<<<
     *             i, block = self._find_block(item)
     *             if not block.should_store(value):
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.set._set_item", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":2993
     *                                      'with manager shape')
     *
     *         def _set_item(item, arr):             # <<<<<<<<<<<<<<
     *             i, block = self._find_block(item)
     *             if not block.should_store(value):
     */
      __pyx_tuple__96 = PyTuple_Pack(4, __pyx_n_s_item, __pyx_n_s_arr, __pyx_n_s_i, __pyx_n_s_block); if (unlikely(!__pyx_tuple__96)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2993; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__96);
      __Pyx_GIVEREF(__pyx_tuple__96);

      /* "pandas/internals.pyx":2993
     *                                      'with manager shape')
     *
     *         def _set_item(item, arr):             # <<<<<<<<<<<<<<
     *             i, block = self._find_block(item)
     *             if not block.should_store(value):
     */
      __pyx_t_2 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_3set_1_set_item, 0, __pyx_n_s_BlockManager_set_locals__set_ite, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__97)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2993; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v__set_item = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_codeobj__97 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__96, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_item, 2993, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__97)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2993; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     2994:             i, block = self._find_block(item)

      /* "pandas/internals.pyx":2994
     *
     *         def _set_item(item, arr):
     *             i, block = self._find_block(item)             # <<<<<<<<<<<<<<
     *             if not block.should_store(value):
     *                 # delete from block, create and append new block
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_find_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
        PyObject* sequence = __pyx_t_3;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2994; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_i = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_v_block = __pyx_t_1;
      __pyx_t_1 = 0;

     2995:             if not block.should_store(value):

      /* "pandas/internals.pyx":2995
     *         def _set_item(item, arr):
     *             i, block = self._find_block(item)
     *             if not block.should_store(value):             # <<<<<<<<<<<<<<
     *                 # delete from block, create and append new block
     *                 self._delete_from_block(i, item)
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_should_store); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2995; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (unlikely(!__pyx_cur_scope->__pyx_v_value)) { __Pyx_RaiseClosureNameError("value"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2995; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2995; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_value);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
      __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2995; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2995; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_7 = ((!__pyx_t_6) != 0);
      if (__pyx_t_7) {

     2996:                 # delete from block, create and append new block

     2997:                 self._delete_from_block(i, item)

        /* "pandas/internals.pyx":2997
     *             if not block.should_store(value):
     *                 # delete from block, create and append new block
     *                 self._delete_from_block(i, item)             # <<<<<<<<<<<<<<
     *                 self._add_new_block(item, arr, loc=None)
     *             else:
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_delete_from_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_i);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i);
        __Pyx_GIVEREF(__pyx_v_i);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     2998:                 self._add_new_block(item, arr, loc=None)

        /* "pandas/internals.pyx":2998
     *                 # delete from block, create and append new block
     *                 self._delete_from_block(i, item)
     *                 self._add_new_block(item, arr, loc=None)             # <<<<<<<<<<<<<<
     *             else:
     *                 block.set(item, arr, check=check)
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_add_new_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __Pyx_INCREF(__pyx_v_arr);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_arr);
        __Pyx_GIVEREF(__pyx_v_arr);
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_loc, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 2998; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L5;
      }
      /*else*/ {

     2999:             else:

     3000:                 block.set(item, arr, check=check)

        /* "pandas/internals.pyx":3000
     *                 self._add_new_block(item, arr, loc=None)
     *             else:
     *                 block.set(item, arr, check=check)             # <<<<<<<<<<<<<<
     *
     *         try:
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_set); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __Pyx_INCREF(__pyx_v_arr);
        PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_arr);
        __Pyx_GIVEREF(__pyx_v_arr);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (unlikely(!__pyx_cur_scope->__pyx_v_check)) { __Pyx_RaiseClosureNameError("check"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3000; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_check, __pyx_cur_scope->__pyx_v_check) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3000; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      }
      __pyx_L5:;

     3001:

     3002:         try:

      /* "pandas/internals.pyx":3002
     *                 block.set(item, arr, check=check)
     *
     *         try:             # <<<<<<<<<<<<<<
     *
     *             loc = self.items.get_loc(item)
     */
      {
        /*try:*/ {

     3003:

     3004:             loc = self.items.get_loc(item)

          /* "pandas/internals.pyx":3004
     *         try:
     *
     *             loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *             if isinstance(loc, int):
     *                 _set_item(self.items[loc], value)
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3004; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3004; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3004; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3004; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_v_loc = __pyx_t_5;
          __pyx_t_5 = 0;

     3005:             if isinstance(loc, int):

          /* "pandas/internals.pyx":3005
     *
     *             loc = self.items.get_loc(item)
     *             if isinstance(loc, int):             # <<<<<<<<<<<<<<
     *                 _set_item(self.items[loc], value)
     *             else:
     */
          __pyx_t_4 = PyInt_Check(__pyx_v_loc);
          __pyx_t_3 = (__pyx_t_4 != 0);
          if (__pyx_t_3) {

     3006:                 _set_item(self.items[loc], value)

            /* "pandas/internals.pyx":3006
     *             loc = self.items.get_loc(item)
     *             if isinstance(loc, int):
     *                 _set_item(self.items[loc], value)             # <<<<<<<<<<<<<<
     *             else:
     *                 subset = self.items[loc]
     */
            __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3006; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_2 = PyObject_GetItem(__pyx_t_5, __pyx_v_loc); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3006; __pyx_clineno = __LINE__; goto __pyx_L6_error;};
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __pyx_t_5 = __pyx_cur_scope->__pyx_v_value;
            __Pyx_INCREF(__pyx_t_5);
            __pyx_t_1 = __pyx_pf_6pandas_9internals_12BlockManager_3set__set_item(__pyx_v__set_item, __pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3006; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            goto __pyx_L14;
          }
          /*else*/ {

     3007:             else:

     3008:                 subset = self.items[loc]

            /* "pandas/internals.pyx":3008
     *                 _set_item(self.items[loc], value)
     *             else:
     *                 subset = self.items[loc]             # <<<<<<<<<<<<<<
     *                 if len(value) != len(subset):
     *                     raise AssertionError(
     */
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3008; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_5 = PyObject_GetItem(__pyx_t_1, __pyx_v_loc); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3008; __pyx_clineno = __LINE__; goto __pyx_L6_error;};
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_v_subset = __pyx_t_5;
            __pyx_t_5 = 0;

     3009:                 if len(value) != len(subset):

            /* "pandas/internals.pyx":3009
     *             else:
     *                 subset = self.items[loc]
     *                 if len(value) != len(subset):             # <<<<<<<<<<<<<<
     *                     raise AssertionError(
     *                         'Number of items to set did not match')
     */
            __pyx_t_5 = __pyx_cur_scope->__pyx_v_value;
            __Pyx_INCREF(__pyx_t_5);
            __pyx_t_9 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3009; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __pyx_t_10 = PyObject_Length(__pyx_v_subset); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3009; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __pyx_t_3 = ((__pyx_t_9 != __pyx_t_10) != 0);
            if (__pyx_t_3) {

     3010:                     raise AssertionError(

              /* "pandas/internals.pyx":3010
     *                 subset = self.items[loc]
     *                 if len(value) != len(subset):
     *                     raise AssertionError(             # <<<<<<<<<<<<<<
     *                         'Number of items to set did not match')
     *
     */
              __pyx_t_5 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__98, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3010; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __Pyx_Raise(__pyx_t_5, 0, 0, 0);
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3010; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            }

      /* "pandas/internals.pyx":3010
     *                 subset = self.items[loc]
     *                 if len(value) != len(subset):
     *                     raise AssertionError(             # <<<<<<<<<<<<<<
     *                         'Number of items to set did not match')
     *
     */
      __pyx_tuple__98 = PyTuple_Pack(1, __pyx_kp_s_Number_of_items_to_set_did_not_m); if (unlikely(!__pyx_tuple__98)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3010; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__98);
      __Pyx_GIVEREF(__pyx_tuple__98);

     3011:                         'Number of items to set did not match')

     3012:

     3013:                 # we are inserting multiple non-unique items as replacements

     3014:                 # we are inserting one by one, so the index can go from unique

     3015:                 # to non-unique during the loop, need to have _ref_locs defined

     3016:                 # at all times

     3017:                 if np.isscalar(item) and (com.is_list_like(loc) or isinstance(loc, slice)):

            /* "pandas/internals.pyx":3017
     *                 # to non-unique during the loop, need to have _ref_locs defined
     *                 # at all times
     *                 if np.isscalar(item) and (com.is_list_like(loc) or isinstance(loc, slice)):             # <<<<<<<<<<<<<<
     *
     *                     # first delete from all blocks
     */
            __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_isscalar); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_INCREF(__pyx_v_item);
            PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_item);
            __Pyx_GIVEREF(__pyx_v_item);
            __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            if (__pyx_t_3) {
              __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_is_list_like); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __Pyx_INCREF(__pyx_v_loc);
              PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_loc);
              __Pyx_GIVEREF(__pyx_v_loc);
              __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3017; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
              if (!__pyx_t_4) {
                __pyx_t_11 = PySlice_Check(__pyx_v_loc);
                __pyx_t_12 = __pyx_t_11;
              } else {
                __pyx_t_12 = __pyx_t_4;
              }
              __pyx_t_4 = __pyx_t_12;
            } else {
              __pyx_t_4 = __pyx_t_3;
            }
            if (__pyx_t_4) {

     3018:

     3019:                     # first delete from all blocks

     3020:                     self.delete(item)

              /* "pandas/internals.pyx":3020
     *
     *                     # first delete from all blocks
     *                     self.delete(item)             # <<<<<<<<<<<<<<
     *
     *                     loc = _possibly_convert_to_indexer(loc)
     */
              __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_delete); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3020; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3020; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __Pyx_INCREF(__pyx_v_item);
              PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
              __Pyx_GIVEREF(__pyx_v_item);
              __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3020; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3021:

     3022:                     loc = _possibly_convert_to_indexer(loc)

              /* "pandas/internals.pyx":3022
     *                     self.delete(item)
     *
     *                     loc = _possibly_convert_to_indexer(loc)             # <<<<<<<<<<<<<<
     *                     for i, (l, k, arr) in enumerate(zip(loc, subset, value)):
     *
     */
              __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_possibly_convert_to_indexer); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3022; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3022; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __Pyx_INCREF(__pyx_v_loc);
              PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_loc);
              __Pyx_GIVEREF(__pyx_v_loc);
              __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3022; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __Pyx_DECREF_SET(__pyx_v_loc, __pyx_t_1);
              __pyx_t_1 = 0;

     3023:                     for i, (l, k, arr) in enumerate(zip(loc, subset, value)):

              /* "pandas/internals.pyx":3023
     *
     *                     loc = _possibly_convert_to_indexer(loc)
     *                     for i, (l, k, arr) in enumerate(zip(loc, subset, value)):             # <<<<<<<<<<<<<<
     *
     *                         # insert the item
     */
              __Pyx_INCREF(__pyx_int_0);
              __pyx_t_1 = __pyx_int_0;
              __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_2);
              __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __Pyx_INCREF(__pyx_v_loc);
              PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_loc);
              __Pyx_GIVEREF(__pyx_v_loc);
              __Pyx_INCREF(__pyx_v_subset);
              PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_subset);
              __Pyx_GIVEREF(__pyx_v_subset);
              __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
              PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_cur_scope->__pyx_v_value);
              __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
              __pyx_t_13 = PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_13);
              __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              if (PyList_CheckExact(__pyx_t_13) || PyTuple_CheckExact(__pyx_t_13)) {
                __pyx_t_5 = __pyx_t_13; __Pyx_INCREF(__pyx_t_5); __pyx_t_10 = 0;
                __pyx_t_14 = NULL;
              } else {
                __pyx_t_10 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_13); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_5);
                __pyx_t_14 = Py_TYPE(__pyx_t_5)->tp_iternext;
              }
              __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
              for (;;) {
                if (!__pyx_t_14 && PyList_CheckExact(__pyx_t_5)) {
                  if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_5)) break;
                  #if CYTHON_COMPILING_IN_CPYTHON
                  __pyx_t_13 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_10); __Pyx_INCREF(__pyx_t_13); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #else
                  __pyx_t_13 = PySequence_ITEM(__pyx_t_5, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #endif
                } else if (!__pyx_t_14 && PyTuple_CheckExact(__pyx_t_5)) {
                  if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
                  #if CYTHON_COMPILING_IN_CPYTHON
                  __pyx_t_13 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_10); __Pyx_INCREF(__pyx_t_13); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #else
                  __pyx_t_13 = PySequence_ITEM(__pyx_t_5, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #endif
                } else {
                  __pyx_t_13 = __pyx_t_14(__pyx_t_5);
                  if (unlikely(!__pyx_t_13)) {
                    PyObject* exc_type = PyErr_Occurred();
                    if (exc_type) {
                      if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                      else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                    }
                    break;
                  }
                  __Pyx_GOTREF(__pyx_t_13);
                }
                if ((likely(PyTuple_CheckExact(__pyx_t_13))) || (PyList_CheckExact(__pyx_t_13))) {
                  PyObject* sequence = __pyx_t_13;
                  #if CYTHON_COMPILING_IN_CPYTHON
                  Py_ssize_t size = Py_SIZE(sequence);
                  #else
                  Py_ssize_t size = PySequence_Size(sequence);
                  #endif
                  if (unlikely(size != 3)) {
                    if (size > 3) __Pyx_RaiseTooManyValuesError(3);
                    else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                    {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  }
                  #if CYTHON_COMPILING_IN_CPYTHON
                  if (likely(PyTuple_CheckExact(sequence))) {
                    __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
                    __pyx_t_15 = PyTuple_GET_ITEM(sequence, 1);
                    __pyx_t_16 = PyTuple_GET_ITEM(sequence, 2);
                  } else {
                    __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
                    __pyx_t_15 = PyList_GET_ITEM(sequence, 1);
                    __pyx_t_16 = PyList_GET_ITEM(sequence, 2);
                  }
                  __Pyx_INCREF(__pyx_t_2);
                  __Pyx_INCREF(__pyx_t_15);
                  __Pyx_INCREF(__pyx_t_16);
                  #else
                  __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_2);
                  __pyx_t_15 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_15);
                  __pyx_t_16 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_16);
                  #endif
                  __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
                } else {
                  Py_ssize_t index = -1;
                  __pyx_t_17 = PyObject_GetIter(__pyx_t_13); if (unlikely(!__pyx_t_17)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_17);
                  __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
                  __pyx_t_18 = Py_TYPE(__pyx_t_17)->tp_iternext;
                  index = 0; __pyx_t_2 = __pyx_t_18(__pyx_t_17); if (unlikely(!__pyx_t_2)) goto __pyx_L19_unpacking_failed;
                  __Pyx_GOTREF(__pyx_t_2);
                  index = 1; __pyx_t_15 = __pyx_t_18(__pyx_t_17); if (unlikely(!__pyx_t_15)) goto __pyx_L19_unpacking_failed;
                  __Pyx_GOTREF(__pyx_t_15);
                  index = 2; __pyx_t_16 = __pyx_t_18(__pyx_t_17); if (unlikely(!__pyx_t_16)) goto __pyx_L19_unpacking_failed;
                  __Pyx_GOTREF(__pyx_t_16);
                  if (__Pyx_IternextUnpackEndCheck(__pyx_t_18(__pyx_t_17), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __pyx_t_18 = NULL;
                  __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
                  goto __pyx_L20_unpacking_done;
                  __pyx_L19_unpacking_failed:;
                  __Pyx_DECREF(__pyx_t_17); __pyx_t_17 = 0;
                  __pyx_t_18 = NULL;
                  if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
                  {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __pyx_L20_unpacking_done:;
                }
                __Pyx_XDECREF_SET(__pyx_v_l, __pyx_t_2);
                __pyx_t_2 = 0;
                __Pyx_XDECREF_SET(__pyx_v_k, __pyx_t_15);
                __pyx_t_15 = 0;
                __Pyx_XDECREF_SET(__pyx_v_arr, __pyx_t_16);
                __pyx_t_16 = 0;
                __Pyx_INCREF(__pyx_t_1);
                __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
                __pyx_t_13 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3023; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_13);
                __Pyx_DECREF(__pyx_t_1);
                __pyx_t_1 = __pyx_t_13;
                __pyx_t_13 = 0;

     3024:

     3025:                         # insert the item

     3026:                         self.insert(

                /* "pandas/internals.pyx":3026
     *
     *                         # insert the item
     *                         self.insert(             # <<<<<<<<<<<<<<
     *                             l, k, arr[None, :], allow_duplicates=True)
     *
     */
                __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_insert); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3026; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_13);

                /* "pandas/internals.pyx":3026
     *
     *                         # insert the item
     *                         self.insert(             # <<<<<<<<<<<<<<
     *                             l, k, arr[None, :], allow_duplicates=True)
     *
     */
                __pyx_t_15 = PyTuple_New(3); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3026; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_15);
                __Pyx_INCREF(__pyx_v_l);
                PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_v_l);
                __Pyx_GIVEREF(__pyx_v_l);
                __Pyx_INCREF(__pyx_v_k);
                PyTuple_SET_ITEM(__pyx_t_15, 1, __pyx_v_k);
                __Pyx_GIVEREF(__pyx_v_k);
                PyTuple_SET_ITEM(__pyx_t_15, 2, __pyx_t_16);
                __Pyx_GIVEREF(__pyx_t_16);
                __pyx_t_16 = 0;
                __pyx_t_16 = PyDict_New(); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3026; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_16);

                /* "pandas/internals.pyx":3026
     *
     *                         # insert the item
     *                         self.insert(             # <<<<<<<<<<<<<<
     *                             l, k, arr[None, :], allow_duplicates=True)
     *
     */
                __pyx_t_2 = PyObject_Call(__pyx_t_13, __pyx_t_15, __pyx_t_16); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3026; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_2);
                __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
                __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
                __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3027:                             l, k, arr[None, :], allow_duplicates=True)

      /* "pandas/internals.pyx":3027
     *                         # insert the item
     *                         self.insert(
     *                             l, k, arr[None, :], allow_duplicates=True)             # <<<<<<<<<<<<<<
     *
     *                         # reset the _ref_locs on indiviual blocks
     */
      __pyx_slice__99 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__99)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3027; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__99);
      __Pyx_GIVEREF(__pyx_slice__99);

                /* "pandas/internals.pyx":3027
     *                         # insert the item
     *                         self.insert(
     *                             l, k, arr[None, :], allow_duplicates=True)             # <<<<<<<<<<<<<<
     *
     *                         # reset the _ref_locs on indiviual blocks
     */
                __pyx_t_16 = PyObject_GetItem(__pyx_v_arr, __pyx_tuple__100); if (unlikely(__pyx_t_16 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3027; __pyx_clineno = __LINE__; goto __pyx_L6_error;};
                __Pyx_GOTREF(__pyx_t_16);

                /* "pandas/internals.pyx":3027
     *                         # insert the item
     *                         self.insert(
     *                             l, k, arr[None, :], allow_duplicates=True)             # <<<<<<<<<<<<<<
     *
     *                         # reset the _ref_locs on indiviual blocks
     */
                if (PyDict_SetItem(__pyx_t_16, __pyx_n_s_allow_duplicates, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3026; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
      __pyx_tuple__100 = PyTuple_Pack(2, Py_None, __pyx_slice__99); if (unlikely(!__pyx_tuple__100)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3027; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__100);
      __Pyx_GIVEREF(__pyx_tuple__100);

     3028:

     3029:                         # reset the _ref_locs on indiviual blocks

     3030:                         # rebuild ref_locs

     3031:                         if self.items.is_unique:

                /* "pandas/internals.pyx":3031
     *                         # reset the _ref_locs on indiviual blocks
     *                         # rebuild ref_locs
     *                         if self.items.is_unique:             # <<<<<<<<<<<<<<
     *                             self._reset_ref_locs()
     *                             self._set_ref_locs(do_refs='force')
     */
                __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3031; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_2);
                __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3031; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_16);
                __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
                __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_16); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3031; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                if (__pyx_t_4) {

     3032:                             self._reset_ref_locs()

                  /* "pandas/internals.pyx":3032
     *                         # rebuild ref_locs
     *                         if self.items.is_unique:
     *                             self._reset_ref_locs()             # <<<<<<<<<<<<<<
     *                             self._set_ref_locs(do_refs='force')
     *
     */
                  __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_reset_ref_locs_2); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3032; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_16);
                  __pyx_t_2 = PyObject_Call(__pyx_t_16, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3032; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_2);
                  __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3033:                             self._set_ref_locs(do_refs='force')

                  /* "pandas/internals.pyx":3033
     *                         if self.items.is_unique:
     *                             self._reset_ref_locs()
     *                             self._set_ref_locs(do_refs='force')             # <<<<<<<<<<<<<<
     *
     *                     self._rebuild_ref_locs()
     */
                  __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3033; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_2);
                  __pyx_t_16 = PyDict_New(); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3033; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_16);
                  if (PyDict_SetItem(__pyx_t_16, __pyx_n_s_do_refs, __pyx_n_s_force) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3033; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __pyx_t_15 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_16); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3033; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_15);
                  __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
                  __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                  __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
                  goto __pyx_L21;
                }
                __pyx_L21:;
              }
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3034:

     3035:                     self._rebuild_ref_locs()

              /* "pandas/internals.pyx":3035
     *                             self._set_ref_locs(do_refs='force')
     *
     *                     self._rebuild_ref_locs()             # <<<<<<<<<<<<<<
     *
     *                 else:
     */
              __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_rebuild_ref_locs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3035; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3035; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              goto __pyx_L16;
            }
            /*else*/ {

     3036:

     3037:                 else:

     3038:                     for i, (item, arr) in enumerate(zip(subset, value)):

              /* "pandas/internals.pyx":3038
     *
     *                 else:
     *                     for i, (item, arr) in enumerate(zip(subset, value)):             # <<<<<<<<<<<<<<
     *                         _set_item(item, arr[None, :])
     *         except KeyError:
     */
              __Pyx_INCREF(__pyx_int_0);
              __pyx_t_5 = __pyx_int_0;
              __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __pyx_t_15 = PyTuple_New(2); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_15);
              __Pyx_INCREF(__pyx_v_subset);
              PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_v_subset);
              __Pyx_GIVEREF(__pyx_v_subset);
              __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
              PyTuple_SET_ITEM(__pyx_t_15, 1, __pyx_cur_scope->__pyx_v_value);
              __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
              __pyx_t_16 = PyObject_Call(__pyx_t_1, __pyx_t_15, NULL); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
              __Pyx_GOTREF(__pyx_t_16);
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              if (PyList_CheckExact(__pyx_t_16) || PyTuple_CheckExact(__pyx_t_16)) {
                __pyx_t_15 = __pyx_t_16; __Pyx_INCREF(__pyx_t_15); __pyx_t_10 = 0;
                __pyx_t_14 = NULL;
              } else {
                __pyx_t_10 = -1; __pyx_t_15 = PyObject_GetIter(__pyx_t_16); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_15);
                __pyx_t_14 = Py_TYPE(__pyx_t_15)->tp_iternext;
              }
              __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
              for (;;) {
                if (!__pyx_t_14 && PyList_CheckExact(__pyx_t_15)) {
                  if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_15)) break;
                  #if CYTHON_COMPILING_IN_CPYTHON
                  __pyx_t_16 = PyList_GET_ITEM(__pyx_t_15, __pyx_t_10); __Pyx_INCREF(__pyx_t_16); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #else
                  __pyx_t_16 = PySequence_ITEM(__pyx_t_15, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #endif
                } else if (!__pyx_t_14 && PyTuple_CheckExact(__pyx_t_15)) {
                  if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_15)) break;
                  #if CYTHON_COMPILING_IN_CPYTHON
                  __pyx_t_16 = PyTuple_GET_ITEM(__pyx_t_15, __pyx_t_10); __Pyx_INCREF(__pyx_t_16); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #else
                  __pyx_t_16 = PySequence_ITEM(__pyx_t_15, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  #endif
                } else {
                  __pyx_t_16 = __pyx_t_14(__pyx_t_15);
                  if (unlikely(!__pyx_t_16)) {
                    PyObject* exc_type = PyErr_Occurred();
                    if (exc_type) {
                      if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                      else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                    }
                    break;
                  }
                  __Pyx_GOTREF(__pyx_t_16);
                }
                if ((likely(PyTuple_CheckExact(__pyx_t_16))) || (PyList_CheckExact(__pyx_t_16))) {
                  PyObject* sequence = __pyx_t_16;
                  #if CYTHON_COMPILING_IN_CPYTHON
                  Py_ssize_t size = Py_SIZE(sequence);
                  #else
                  Py_ssize_t size = PySequence_Size(sequence);
                  #endif
                  if (unlikely(size != 2)) {
                    if (size > 2) __Pyx_RaiseTooManyValuesError(2);
                    else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                    {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  }
                  #if CYTHON_COMPILING_IN_CPYTHON
                  if (likely(PyTuple_CheckExact(sequence))) {
                    __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
                    __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
                  } else {
                    __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
                    __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
                  }
                  __Pyx_INCREF(__pyx_t_1);
                  __Pyx_INCREF(__pyx_t_2);
                  #else
                  __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_1);
                  __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_2);
                  #endif
                  __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                } else {
                  Py_ssize_t index = -1;
                  __pyx_t_13 = PyObject_GetIter(__pyx_t_16); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __Pyx_GOTREF(__pyx_t_13);
                  __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                  __pyx_t_18 = Py_TYPE(__pyx_t_13)->tp_iternext;
                  index = 0; __pyx_t_1 = __pyx_t_18(__pyx_t_13); if (unlikely(!__pyx_t_1)) goto __pyx_L24_unpacking_failed;
                  __Pyx_GOTREF(__pyx_t_1);
                  index = 1; __pyx_t_2 = __pyx_t_18(__pyx_t_13); if (unlikely(!__pyx_t_2)) goto __pyx_L24_unpacking_failed;
                  __Pyx_GOTREF(__pyx_t_2);
                  if (__Pyx_IternextUnpackEndCheck(__pyx_t_18(__pyx_t_13), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __pyx_t_18 = NULL;
                  __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
                  goto __pyx_L25_unpacking_done;
                  __pyx_L24_unpacking_failed:;
                  __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
                  __pyx_t_18 = NULL;
                  if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
                  {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                  __pyx_L25_unpacking_done:;
                }
                __Pyx_DECREF_SET(__pyx_v_item, __pyx_t_1);
                __pyx_t_1 = 0;
                __Pyx_XDECREF_SET(__pyx_v_arr, __pyx_t_2);
                __pyx_t_2 = 0;
                __Pyx_INCREF(__pyx_t_5);
                __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_5);
                __pyx_t_16 = PyNumber_Add(__pyx_t_5, __pyx_int_1); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3038; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_16);
                __Pyx_DECREF(__pyx_t_5);
                __pyx_t_5 = __pyx_t_16;
                __pyx_t_16 = 0;

     3039:                         _set_item(item, arr[None, :])

      /* "pandas/internals.pyx":3039
     *                 else:
     *                     for i, (item, arr) in enumerate(zip(subset, value)):
     *                         _set_item(item, arr[None, :])             # <<<<<<<<<<<<<<
     *         except KeyError:
     *             # insert at end
     */
      __pyx_slice__101 = PySlice_New(Py_None, Py_None, Py_None); if (unlikely(!__pyx_slice__101)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__101);
      __Pyx_GIVEREF(__pyx_slice__101);

                /* "pandas/internals.pyx":3039
     *                 else:
     *                     for i, (item, arr) in enumerate(zip(subset, value)):
     *                         _set_item(item, arr[None, :])             # <<<<<<<<<<<<<<
     *         except KeyError:
     *             # insert at end
     */
                __pyx_t_16 = PyObject_GetItem(__pyx_v_arr, __pyx_tuple__102); if (unlikely(__pyx_t_16 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3039; __pyx_clineno = __LINE__; goto __pyx_L6_error;};
                __Pyx_GOTREF(__pyx_t_16);
                __pyx_t_2 = __pyx_pf_6pandas_9internals_12BlockManager_3set__set_item(__pyx_v__set_item, __pyx_v_item, __pyx_t_16); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3039; __pyx_clineno = __LINE__; goto __pyx_L6_error;}
                __Pyx_GOTREF(__pyx_t_2);
                __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
                __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
              }
              __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            }
            __pyx_L16:;
          }
          __pyx_L14:;
        }
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        goto __pyx_L13_try_end;
        __pyx_L6_error:;
        __Pyx_XDECREF(__pyx_t_17); __pyx_t_17 = 0;
        __Pyx_XDECREF(__pyx_t_13); __pyx_t_13 = 0;
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_16); __pyx_t_16 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_15); __pyx_t_15 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__102 = PyTuple_Pack(2, Py_None, __pyx_slice__101); if (unlikely(!__pyx_tuple__102)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__102);
      __Pyx_GIVEREF(__pyx_tuple__102);

     3040:         except KeyError:

        /* "pandas/internals.pyx":3040
     *                     for i, (item, arr) in enumerate(zip(subset, value)):
     *                         _set_item(item, arr[None, :])
     *         except KeyError:             # <<<<<<<<<<<<<<
     *             # insert at end
     *             self.insert(len(self.items), item, value)
     */
        __pyx_t_19 = PyErr_ExceptionMatches(__pyx_builtin_KeyError);
        if (__pyx_t_19) {
          __Pyx_AddTraceback("pandas.internals.BlockManager.set", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_15, &__pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3040; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_GOTREF(__pyx_t_2);

     3041:             # insert at end

     3042:             self.insert(len(self.items), item, value)

          /* "pandas/internals.pyx":3042
     *         except KeyError:
     *             # insert at end
     *             self.insert(len(self.items), item, value)             # <<<<<<<<<<<<<<
     *
     *         self._known_consolidated = False
     */
          __pyx_t_16 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_insert); if (unlikely(!__pyx_t_16)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3042; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_GOTREF(__pyx_t_16);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3042; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_10 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3042; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_10); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3042; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_13 = PyTuple_New(3); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3042; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_GOTREF(__pyx_t_13);
          PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __Pyx_INCREF(__pyx_cur_scope->__pyx_v_value);
          PyTuple_SET_ITEM(__pyx_t_13, 2, __pyx_cur_scope->__pyx_v_value);
          __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_value);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_16, __pyx_t_13, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3042; __pyx_clineno = __LINE__; goto __pyx_L8_except_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_16); __pyx_t_16 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          goto __pyx_L7_exception_handled;
        }
        goto __pyx_L8_except_error;
        __pyx_L8_except_error:;
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
        goto __pyx_L1_error;
        __pyx_L7_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
        __pyx_L13_try_end:;
      }

     3043:

     3044:         self._known_consolidated = False

      /* "pandas/internals.pyx":3044
     *             self.insert(len(self.items), item, value)
     *
     *         self._known_consolidated = False             # <<<<<<<<<<<<<<
     *
     *     def insert(self, loc, item, value, allow_duplicates=False):
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_known_consolidated, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3045:

     3046:     def insert(self, loc, item, value, allow_duplicates=False):

    /* "pandas/internals.pyx":3046
     *         self._known_consolidated = False
     *
     *     def insert(self, loc, item, value, allow_duplicates=False):             # <<<<<<<<<<<<<<
     *
     *         if not allow_duplicates and item in self.items:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_141insert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_141insert = {__Pyx_NAMESTR("insert"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_141insert, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_141insert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_loc = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_allow_duplicates = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("insert (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_loc,&__pyx_n_s_item,&__pyx_n_s_value,&__pyx_n_s_allow_duplicates,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_loc)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("insert", 0, 4, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("insert", 0, 4, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("insert", 0, 4, 5, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_allow_duplicates);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "insert") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_loc = values[1];
        __pyx_v_item = values[2];
        __pyx_v_value = values[3];
        __pyx_v_allow_duplicates = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("insert", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.insert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_140insert(__pyx_self, __pyx_v_self, __pyx_v_loc, __pyx_v_item, __pyx_v_value, __pyx_v_allow_duplicates);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_140insert(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_loc, PyObject *__pyx_v_item, PyObject *__pyx_v_value, PyObject *__pyx_v_allow_duplicates) {
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("insert", 0);

      /* "pandas/internals.pyx":3046
     *         self._known_consolidated = False
     *
     *     def insert(self, loc, item, value, allow_duplicates=False):             # <<<<<<<<<<<<<<
     *
     *         if not allow_duplicates and item in self.items:
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_AddTraceback("pandas.internals.BlockManager.insert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3046
     *         self._known_consolidated = False
     *
     *     def insert(self, loc, item, value, allow_duplicates=False):             # <<<<<<<<<<<<<<
     *
     *         if not allow_duplicates and item in self.items:
     */
      __pyx_tuple__628 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_loc, __pyx_n_s_item, __pyx_n_s_value, __pyx_n_s_allow_duplicates, __pyx_n_s_new_items); if (unlikely(!__pyx_tuple__628)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__628);
      __Pyx_GIVEREF(__pyx_tuple__628);
      __pyx_codeobj__629 = (PyObject*)__Pyx_PyCode_New(5, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__628, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_insert, 3046, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__629)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3046
     *         self._known_consolidated = False
     *
     *     def insert(self, loc, item, value, allow_duplicates=False):             # <<<<<<<<<<<<<<
     *
     *         if not allow_duplicates and item in self.items:
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_141insert, 0, __pyx_n_s_BlockManager_insert, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__629)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__630);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_insert, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__630 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__630)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3046; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__630);
      __Pyx_GIVEREF(__pyx_tuple__630);

     3047:

     3048:         if not allow_duplicates and item in self.items:

      /* "pandas/internals.pyx":3048
     *     def insert(self, loc, item, value, allow_duplicates=False):
     *
     *         if not allow_duplicates and item in self.items:             # <<<<<<<<<<<<<<
     *             # Should this be a different kind of error??
     *             raise ValueError('cannot insert %s, already exists' % item)
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_allow_duplicates); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3048; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = ((!__pyx_t_1) != 0);
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3048; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = (__Pyx_PySequence_Contains(__pyx_v_item, __pyx_t_3, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3048; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_4 = (__pyx_t_1 != 0);
      } else {
        __pyx_t_4 = __pyx_t_2;
      }
      if (__pyx_t_4) {

     3049:             # Should this be a different kind of error??

     3050:             raise ValueError('cannot insert %s, already exists' % item)

        /* "pandas/internals.pyx":3050
     *         if not allow_duplicates and item in self.items:
     *             # Should this be a different kind of error??
     *             raise ValueError('cannot insert %s, already exists' % item)             # <<<<<<<<<<<<<<
     *
     *         try:
     */
        __pyx_t_3 = __Pyx_PyString_Format(__pyx_kp_s_cannot_insert_s_already_exists, __pyx_v_item); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3050; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3050; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3050; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_Raise(__pyx_t_3, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3050; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     3051:

     3052:         try:

      /* "pandas/internals.pyx":3052
     *             raise ValueError('cannot insert %s, already exists' % item)
     *
     *         try:             # <<<<<<<<<<<<<<
     *             new_items = self.items.insert(loc, item)
     *             self.set_items_norename(new_items)
     */
      {
        /*try:*/ {

     3053:             new_items = self.items.insert(loc, item)

          /* "pandas/internals.pyx":3053
     *
     *         try:
     *             new_items = self.items.insert(loc, item)             # <<<<<<<<<<<<<<
     *             self.set_items_norename(new_items)
     *
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3053; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_insert); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3053; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3053; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_loc);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_loc);
          __Pyx_GIVEREF(__pyx_v_loc);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __pyx_t_9 = PyObject_Call(__pyx_t_5, __pyx_t_3, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3053; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_v_new_items = __pyx_t_9;
          __pyx_t_9 = 0;

     3054:             self.set_items_norename(new_items)

          /* "pandas/internals.pyx":3054
     *         try:
     *             new_items = self.items.insert(loc, item)
     *             self.set_items_norename(new_items)             # <<<<<<<<<<<<<<
     *
     *             # new block
     */
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_items_norename); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3054; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3054; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);
          __pyx_t_5 = PyObject_Call(__pyx_t_9, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3054; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3055:

     3056:             # new block

     3057:             self._add_new_block(item, value, loc=loc)

          /* "pandas/internals.pyx":3057
     *
     *             # new block
     *             self._add_new_block(item, value, loc=loc)             # <<<<<<<<<<<<<<
     *
     *         except:
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_add_new_block); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3057; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3057; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_item);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_item);
          __Pyx_GIVEREF(__pyx_v_item);
          __Pyx_INCREF(__pyx_v_value);
          PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_value);
          __Pyx_GIVEREF(__pyx_v_value);
          __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3057; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_9);
          if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_loc, __pyx_v_loc) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3057; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __pyx_t_10 = PyObject_Call(__pyx_t_5, __pyx_t_3, __pyx_t_9); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3057; __pyx_clineno = __LINE__; goto __pyx_L4_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_8); __pyx_t_8 = 0;
        goto __pyx_L11_try_end;
        __pyx_L4_error:;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;

     3058:

     3059:         except:

        /* "pandas/internals.pyx":3059
     *             self._add_new_block(item, value, loc=loc)
     *
     *         except:             # <<<<<<<<<<<<<<
     *
     *             # so our insertion operation failed, so back out of the new items
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.BlockManager.insert", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_10, &__pyx_t_9, &__pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3059; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_GOTREF(__pyx_t_3);

     3060:

     3061:             # so our insertion operation failed, so back out of the new items

     3062:             # GH 3010

     3063:             new_items = self.items.delete(loc)

          /* "pandas/internals.pyx":3063
     *             # so our insertion operation failed, so back out of the new items
     *             # GH 3010
     *             new_items = self.items.delete(loc)             # <<<<<<<<<<<<<<
     *             self.set_items_norename(new_items)
     *
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3063; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_delete); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3063; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3063; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_loc);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_loc);
          __Pyx_GIVEREF(__pyx_v_loc);
          __pyx_t_12 = PyObject_Call(__pyx_t_11, __pyx_t_5, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3063; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_XDECREF_SET(__pyx_v_new_items, __pyx_t_12);
          __pyx_t_12 = 0;

     3064:             self.set_items_norename(new_items)

          /* "pandas/internals.pyx":3064
     *             # GH 3010
     *             new_items = self.items.delete(loc)
     *             self.set_items_norename(new_items)             # <<<<<<<<<<<<<<
     *
     *             # re-raise
     */
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_items_norename); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3064; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3064; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);
          __pyx_t_11 = PyObject_Call(__pyx_t_12, __pyx_t_5, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3064; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;

     3065:

     3066:             # re-raise

     3067:             raise

          /* "pandas/internals.pyx":3067
     *
     *             # re-raise
     *             raise             # <<<<<<<<<<<<<<
     *
     *         if len(self.blocks) > 100:
     */
          __Pyx_GIVEREF(__pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_9);
          __Pyx_XGIVEREF(__pyx_t_3);
          __Pyx_ErrRestore(__pyx_t_10, __pyx_t_9, __pyx_t_3);
          __pyx_t_10 = 0; __pyx_t_9 = 0; __pyx_t_3 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3067; __pyx_clineno = __LINE__; goto __pyx_L6_except_error;}
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L5_exception_handled;
        }
        __pyx_L6_except_error:;
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
        goto __pyx_L1_error;
        __pyx_L5_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_6);
        __Pyx_XGIVEREF(__pyx_t_7);
        __Pyx_XGIVEREF(__pyx_t_8);
        __Pyx_ExceptionReset(__pyx_t_6, __pyx_t_7, __pyx_t_8);
        __pyx_L11_try_end:;
      }

     3068:

     3069:         if len(self.blocks) > 100:

      /* "pandas/internals.pyx":3069
     *             raise
     *
     *         if len(self.blocks) > 100:             # <<<<<<<<<<<<<<
     *             self._consolidate_inplace()
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3069; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_13 = PyObject_Length(__pyx_t_3); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3069; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = ((__pyx_t_13 > 100) != 0);
      if (__pyx_t_4) {

     3070:             self._consolidate_inplace()

        /* "pandas/internals.pyx":3070
     *
     *         if len(self.blocks) > 100:
     *             self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *
     *         self._known_consolidated = False
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_9 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3070; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        goto __pyx_L14;
      }
      __pyx_L14:;

     3071:

     3072:         self._known_consolidated = False

      /* "pandas/internals.pyx":3072
     *             self._consolidate_inplace()
     *
     *         self._known_consolidated = False             # <<<<<<<<<<<<<<
     *
     *         # clear the internal ref_loc mappings if necessary
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_known_consolidated, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3072; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3073:

     3074:         # clear the internal ref_loc mappings if necessary

     3075:         if loc != len(self.items) - 1 and new_items.is_unique:

      /* "pandas/internals.pyx":3075
     *
     *         # clear the internal ref_loc mappings if necessary
     *         if loc != len(self.items) - 1 and new_items.is_unique:             # <<<<<<<<<<<<<<
     *             self.set_items_clear(new_items)
     *
     */
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_13 = PyObject_Length(__pyx_t_9); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_9 = PyInt_FromSsize_t((__pyx_t_13 - 1)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_loc, __pyx_t_9, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_1 = __pyx_t_2;
      } else {
        __pyx_t_1 = __pyx_t_4;
      }
      if (__pyx_t_1) {

     3076:             self.set_items_clear(new_items)

        /* "pandas/internals.pyx":3076
     *         # clear the internal ref_loc mappings if necessary
     *         if loc != len(self.items) - 1 and new_items.is_unique:
     *             self.set_items_clear(new_items)             # <<<<<<<<<<<<<<
     *
     *     def set_items_norename(self, value):
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_items_clear); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_INCREF(__pyx_v_new_items);
        PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_new_items);
        __Pyx_GIVEREF(__pyx_v_new_items);
        __pyx_t_10 = PyObject_Call(__pyx_t_3, __pyx_t_9, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        goto __pyx_L15;
      }
      __pyx_L15:;

     3077:

     3078:     def set_items_norename(self, value):

    /* "pandas/internals.pyx":3078
     *             self.set_items_clear(new_items)
     *
     *     def set_items_norename(self, value):             # <<<<<<<<<<<<<<
     *         self.set_axis(0, value, maybe_rename=False, check_axis=False)
     *         self._shape = None
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_143set_items_norename(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_143set_items_norename = {__Pyx_NAMESTR("set_items_norename"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_143set_items_norename, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_143set_items_norename(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_items_norename (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_items_norename", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3078; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set_items_norename") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3078; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set_items_norename", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3078; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.set_items_norename", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_142set_items_norename(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_142set_items_norename(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_items_norename", 0);

      /* "pandas/internals.pyx":3078
     *             self.set_items_clear(new_items)
     *
     *     def set_items_norename(self, value):             # <<<<<<<<<<<<<<
     *         self.set_axis(0, value, maybe_rename=False, check_axis=False)
     *         self._shape = None
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.set_items_norename", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3078
     *             self.set_items_clear(new_items)
     *
     *     def set_items_norename(self, value):             # <<<<<<<<<<<<<<
     *         self.set_axis(0, value, maybe_rename=False, check_axis=False)
     *         self._shape = None
     */
      __pyx_tuple__631 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__631)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3078; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__631);
      __Pyx_GIVEREF(__pyx_tuple__631);

      /* "pandas/internals.pyx":3078
     *             self.set_items_clear(new_items)
     *
     *     def set_items_norename(self, value):             # <<<<<<<<<<<<<<
     *         self.set_axis(0, value, maybe_rename=False, check_axis=False)
     *         self._shape = None
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_143set_items_norename, 0, __pyx_n_s_BlockManager_set_items_norename, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__632)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3078; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_items_norename, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3078; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__632 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__631, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_items_norename, 3078, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__632)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3078; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3079:         self.set_axis(0, value, maybe_rename=False, check_axis=False)

      /* "pandas/internals.pyx":3079
     *
     *     def set_items_norename(self, value):
     *         self.set_axis(0, value, maybe_rename=False, check_axis=False)             # <<<<<<<<<<<<<<
     *         self._shape = None
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_axis_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_int_0);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_int_0);
      __Pyx_GIVEREF(__pyx_int_0);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_maybe_rename, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_check_axis, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3079; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3080:         self._shape = None

      /* "pandas/internals.pyx":3080
     *     def set_items_norename(self, value):
     *         self.set_axis(0, value, maybe_rename=False, check_axis=False)
     *         self._shape = None             # <<<<<<<<<<<<<<
     *
     *     def set_items_clear(self, value):
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_shape_2, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3081:

     3082:     def set_items_clear(self, value):

    /* "pandas/internals.pyx":3082
     *         self._shape = None
     *
     *     def set_items_clear(self, value):             # <<<<<<<<<<<<<<
     *         """ clear the ref_locs on all blocks """
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_145set_items_clear(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_144set_items_clear[] = " clear the ref_locs on all blocks ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_145set_items_clear = {__Pyx_NAMESTR("set_items_clear"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_145set_items_clear, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_144set_items_clear)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_145set_items_clear(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_items_clear (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_value,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_items_clear", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3082; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set_items_clear") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3082; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_value = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set_items_clear", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3082; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.set_items_clear", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_144set_items_clear(__pyx_self, __pyx_v_self, __pyx_v_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_144set_items_clear(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_items_clear", 0);

      /* "pandas/internals.pyx":3082
     *         self._shape = None
     *
     *     def set_items_clear(self, value):             # <<<<<<<<<<<<<<
     *         """ clear the ref_locs on all blocks """
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager.set_items_clear", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3082
     *         self._shape = None
     *
     *     def set_items_clear(self, value):             # <<<<<<<<<<<<<<
     *         """ clear the ref_locs on all blocks """
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     */
      __pyx_tuple__633 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_value); if (unlikely(!__pyx_tuple__633)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__633);
      __Pyx_GIVEREF(__pyx_tuple__633);

      /* "pandas/internals.pyx":3082
     *         self._shape = None
     *
     *     def set_items_clear(self, value):             # <<<<<<<<<<<<<<
     *         """ clear the ref_locs on all blocks """
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_145set_items_clear, 0, __pyx_n_s_BlockManager_set_items_clear, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__634)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_items_clear, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__634 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__633, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_items_clear, 3082, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__634)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3083:         """ clear the ref_locs on all blocks """

     3084:         self.set_axis(0, value, maybe_rename='clear', check_axis=False)

      /* "pandas/internals.pyx":3084
     *     def set_items_clear(self, value):
     *         """ clear the ref_locs on all blocks """
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)             # <<<<<<<<<<<<<<
     *
     *     def _delete_from_all_blocks(self, loc, item):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_axis_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_int_0);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_int_0);
      __Pyx_GIVEREF(__pyx_int_0);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_maybe_rename, __pyx_n_s_clear) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_check_axis, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3084; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3085:

     3086:     def _delete_from_all_blocks(self, loc, item):

    /* "pandas/internals.pyx":3086
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     *
     *     def _delete_from_all_blocks(self, loc, item):             # <<<<<<<<<<<<<<
     *         """ delete from the items loc the item
     *             the item could be in multiple blocks which could
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_147_delete_from_all_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_146_delete_from_all_blocks[] = " delete from the items loc the item\n            the item could be in multiple blocks which could\n            change each iteration (as we split blocks) ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_147_delete_from_all_blocks = {__Pyx_NAMESTR("_delete_from_all_blocks"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_147_delete_from_all_blocks, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_146_delete_from_all_blocks)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_147_delete_from_all_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_loc = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_delete_from_all_blocks (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_loc,&__pyx_n_s_item,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_loc)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_delete_from_all_blocks", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_delete_from_all_blocks", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_delete_from_all_blocks") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_loc = values[1];
        __pyx_v_item = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_delete_from_all_blocks", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._delete_from_all_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_146_delete_from_all_blocks(__pyx_self, __pyx_v_self, __pyx_v_loc, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_146_delete_from_all_blocks(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_loc, PyObject *__pyx_v_item) {
      CYTHON_UNUSED PyObject *__pyx_v_l = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_b = NULL;
      CYTHON_UNUSED PyObject *__pyx_v__ = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_delete_from_all_blocks", 0);
      __Pyx_INCREF(__pyx_v_loc);

      /* "pandas/internals.pyx":3086
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     *
     *     def _delete_from_all_blocks(self, loc, item):             # <<<<<<<<<<<<<<
     *         """ delete from the items loc the item
     *             the item could be in multiple blocks which could
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.BlockManager._delete_from_all_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_l);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v__);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3086
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     *
     *     def _delete_from_all_blocks(self, loc, item):             # <<<<<<<<<<<<<<
     *         """ delete from the items loc the item
     *             the item could be in multiple blocks which could
     */
      __pyx_tuple__635 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_loc, __pyx_n_s_item, __pyx_n_s_l, __pyx_n_s_i, __pyx_n_s_b, __pyx_n_s__10); if (unlikely(!__pyx_tuple__635)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__635);
      __Pyx_GIVEREF(__pyx_tuple__635);

      /* "pandas/internals.pyx":3086
     *         self.set_axis(0, value, maybe_rename='clear', check_axis=False)
     *
     *     def _delete_from_all_blocks(self, loc, item):             # <<<<<<<<<<<<<<
     *         """ delete from the items loc the item
     *             the item could be in multiple blocks which could
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_147_delete_from_all_blocks, 0, __pyx_n_s_BlockManager__delete_from_all_bl, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__636)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_delete_from_all_blocks, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__636 = (PyObject*)__Pyx_PyCode_New(3, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__635, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_delete_from_all_blocks, 3086, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__636)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3086; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3087:         """ delete from the items loc the item

     3088:             the item could be in multiple blocks which could

     3089:             change each iteration (as we split blocks) """

     3090:

     3091:         # possibily convert to an indexer

     3092:         loc = _possibly_convert_to_indexer(loc)

      /* "pandas/internals.pyx":3092
     *
     *         # possibily convert to an indexer
     *         loc = _possibly_convert_to_indexer(loc)             # <<<<<<<<<<<<<<
     *
     *         if isinstance(loc, (list, tuple, np.ndarray)):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_possibly_convert_to_indexer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_loc, __pyx_t_3);
      __pyx_t_3 = 0;

     3093:

     3094:         if isinstance(loc, (list, tuple, np.ndarray)):

      /* "pandas/internals.pyx":3094
     *         loc = _possibly_convert_to_indexer(loc)
     *
     *         if isinstance(loc, (list, tuple, np.ndarray)):             # <<<<<<<<<<<<<<
     *             for l in loc:
     *                 for i, b in enumerate(self.blocks):
     */
      __Pyx_INCREF(__pyx_v_loc);
      __pyx_t_3 = __pyx_v_loc;
      __pyx_t_4 = PyList_Check(__pyx_t_3);
      if (!__pyx_t_4) {
        __pyx_t_5 = PyTuple_Check(__pyx_t_3);
        __pyx_t_6 = __pyx_t_5;
      } else {
        __pyx_t_6 = __pyx_t_4;
      }
      if (!__pyx_t_6) {
        __pyx_t_4 = __Pyx_TypeCheck(__pyx_t_3, ((PyObject*)__pyx_ptype_5numpy_ndarray));
        __pyx_t_5 = __pyx_t_4;
      } else {
        __pyx_t_5 = __pyx_t_6;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_6 = (__pyx_t_5 != 0);
      if (__pyx_t_6) {

     3095:             for l in loc:

        /* "pandas/internals.pyx":3095
     *
     *         if isinstance(loc, (list, tuple, np.ndarray)):
     *             for l in loc:             # <<<<<<<<<<<<<<
     *                 for i, b in enumerate(self.blocks):
     *                     if item in b.items:
     */
        if (PyList_CheckExact(__pyx_v_loc) || PyTuple_CheckExact(__pyx_v_loc)) {
          __pyx_t_3 = __pyx_v_loc; __Pyx_INCREF(__pyx_t_3); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_loc); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_8 = Py_TYPE(__pyx_t_3)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_3)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_3)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_2 = __pyx_t_8(__pyx_t_3);
            if (unlikely(!__pyx_t_2)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_2);
          }
          __Pyx_XDECREF_SET(__pyx_v_l, __pyx_t_2);
          __pyx_t_2 = 0;

     3096:                 for i, b in enumerate(self.blocks):

          /* "pandas/internals.pyx":3096
     *         if isinstance(loc, (list, tuple, np.ndarray)):
     *             for l in loc:
     *                 for i, b in enumerate(self.blocks):             # <<<<<<<<<<<<<<
     *                     if item in b.items:
     *                         self._delete_from_block(i, item)
     */
          __Pyx_INCREF(__pyx_int_0);
          __pyx_t_2 = __pyx_int_0;
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
            __pyx_t_9 = __pyx_t_1; __Pyx_INCREF(__pyx_t_9); __pyx_t_10 = 0;
            __pyx_t_11 = NULL;
          } else {
            __pyx_t_10 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_11 = Py_TYPE(__pyx_t_9)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          for (;;) {
            if (!__pyx_t_11 && PyList_CheckExact(__pyx_t_9)) {
              if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_9)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_1 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_1 = PySequence_ITEM(__pyx_t_9, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_11 && PyTuple_CheckExact(__pyx_t_9)) {
              if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_9)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_1 = PySequence_ITEM(__pyx_t_9, __pyx_t_10); __pyx_t_10++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_1 = __pyx_t_11(__pyx_t_9);
              if (unlikely(!__pyx_t_1)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_1);
            }
            __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_1);
            __pyx_t_1 = 0;
            __Pyx_INCREF(__pyx_t_2);
            __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_2);
            __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3096; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_2);
            __pyx_t_2 = __pyx_t_1;
            __pyx_t_1 = 0;

     3097:                     if item in b.items:

            /* "pandas/internals.pyx":3097
     *             for l in loc:
     *                 for i, b in enumerate(self.blocks):
     *                     if item in b.items:             # <<<<<<<<<<<<<<
     *                         self._delete_from_block(i, item)
     *
     */
            __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3097; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_6 = (__Pyx_PySequence_Contains(__pyx_v_item, __pyx_t_1, Py_EQ)); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3097; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_5 = (__pyx_t_6 != 0);
            if (__pyx_t_5) {

     3098:                         self._delete_from_block(i, item)

              /* "pandas/internals.pyx":3098
     *                 for i, b in enumerate(self.blocks):
     *                     if item in b.items:
     *                         self._delete_from_block(i, item)             # <<<<<<<<<<<<<<
     *
     *         else:
     */
              __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_delete_from_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3098; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_1);
              __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3098; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_INCREF(__pyx_v_i);
              PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_v_i);
              __Pyx_GIVEREF(__pyx_v_i);
              __Pyx_INCREF(__pyx_v_item);
              PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_v_item);
              __Pyx_GIVEREF(__pyx_v_item);
              __pyx_t_13 = PyObject_Call(__pyx_t_1, __pyx_t_12, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3098; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_13);
              __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
              goto __pyx_L8;
            }
            __pyx_L8:;
          }
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     3099:

     3100:         else:

     3101:             i, _ = self._find_block(item)

        /* "pandas/internals.pyx":3101
     *
     *         else:
     *             i, _ = self._find_block(item)             # <<<<<<<<<<<<<<
     *             self._delete_from_block(i, item)
     *
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_find_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_9 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_9))) || (PyList_CheckExact(__pyx_t_9))) {
          PyObject* sequence = __pyx_t_9;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_3);
          #else
          __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          #endif
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_13 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_14 = Py_TYPE(__pyx_t_13)->tp_iternext;
          index = 0; __pyx_t_2 = __pyx_t_14(__pyx_t_13); if (unlikely(!__pyx_t_2)) goto __pyx_L9_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          index = 1; __pyx_t_3 = __pyx_t_14(__pyx_t_13); if (unlikely(!__pyx_t_3)) goto __pyx_L9_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_14(__pyx_t_13), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_14 = NULL;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          goto __pyx_L10_unpacking_done;
          __pyx_L9_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __pyx_t_14 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L10_unpacking_done:;
        }
        __pyx_v_i = __pyx_t_2;
        __pyx_t_2 = 0;
        __pyx_v__ = __pyx_t_3;
        __pyx_t_3 = 0;

     3102:             self._delete_from_block(i, item)

        /* "pandas/internals.pyx":3102
     *         else:
     *             i, _ = self._find_block(item)
     *             self._delete_from_block(i, item)             # <<<<<<<<<<<<<<
     *
     *     def _delete_from_block(self, i, item):
     */
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_delete_from_block); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_i);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_i);
        __Pyx_GIVEREF(__pyx_v_i);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_2 = PyObject_Call(__pyx_t_9, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __pyx_L3:;

     3103:

     3104:     def _delete_from_block(self, i, item):

    /* "pandas/internals.pyx":3104
     *             self._delete_from_block(i, item)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         """
     *         Delete and maybe remove the whole block
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_149_delete_from_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_148_delete_from_block[] = "\n        Delete and maybe remove the whole block\n\n        Remap the split blocks to there old ranges,\n        so after this function, _ref_locs and _items_map (if used)\n        are correct for the items, None fills holes in _ref_locs\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_149_delete_from_block = {__Pyx_NAMESTR("_delete_from_block"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_149_delete_from_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_148_delete_from_block)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_149_delete_from_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_i = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_delete_from_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_i,&__pyx_n_s_item,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_i)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_delete_from_block", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_delete_from_block", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_delete_from_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_i = values[1];
        __pyx_v_item = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_delete_from_block", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._delete_from_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_148_delete_from_block(__pyx_self, __pyx_v_self, __pyx_v_i, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_148_delete_from_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_i, PyObject *__pyx_v_item) {
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_ref_locs = NULL;
      PyObject *__pyx_v_prev_items_map = NULL;
      PyObject *__pyx_v_loc = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_counter = NULL;
      PyObject *__pyx_v_s = NULL;
      PyObject *__pyx_v_e = NULL;
      PyObject *__pyx_v_sblock = NULL;
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_v_j = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_itm = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_delete_from_block", 0);

      /* "pandas/internals.pyx":3104
     *             self._delete_from_block(i, item)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         """
     *         Delete and maybe remove the whole block
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_AddTraceback("pandas.internals.BlockManager._delete_from_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_ref_locs);
      __Pyx_XDECREF(__pyx_v_prev_items_map);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_counter);
      __Pyx_XDECREF(__pyx_v_s);
      __Pyx_XDECREF(__pyx_v_e);
      __Pyx_XDECREF(__pyx_v_sblock);
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XDECREF(__pyx_v_j);
      __Pyx_XDECREF(__pyx_v_itm);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3104
     *             self._delete_from_block(i, item)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         """
     *         Delete and maybe remove the whole block
     */
      __pyx_tuple__637 = PyTuple_Pack(15, __pyx_n_s_self, __pyx_n_s_i, __pyx_n_s_item, __pyx_n_s_block, __pyx_n_s_ref_locs_2, __pyx_n_s_prev_items_map, __pyx_n_s_loc, __pyx_n_s_mask, __pyx_n_s_counter, __pyx_n_s_s, __pyx_n_s_e, __pyx_n_s_sblock, __pyx_n_s_m, __pyx_n_s_j, __pyx_n_s_itm); if (unlikely(!__pyx_tuple__637)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__637);
      __Pyx_GIVEREF(__pyx_tuple__637);

      /* "pandas/internals.pyx":3104
     *             self._delete_from_block(i, item)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         """
     *         Delete and maybe remove the whole block
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_149_delete_from_block, 0, __pyx_n_s_BlockManager__delete_from_block, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__638)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_delete_from_block, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__638 = (PyObject*)__Pyx_PyCode_New(3, 0, 15, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__637, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_delete_from_block, 3104, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__638)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3105:         """

     3106:         Delete and maybe remove the whole block

     3107:

     3108:         Remap the split blocks to there old ranges,

     3109:         so after this function, _ref_locs and _items_map (if used)

     3110:         are correct for the items, None fills holes in _ref_locs

     3111:         """

     3112:         block = self.blocks.pop(i)

      /* "pandas/internals.pyx":3112
     *         are correct for the items, None fills holes in _ref_locs
     *         """
     *         block = self.blocks.pop(i)             # <<<<<<<<<<<<<<
     *         ref_locs = self._set_ref_locs()
     *         prev_items_map = self._items_map.pop(
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_pop); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_i);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i);
      __Pyx_GIVEREF(__pyx_v_i);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_block = __pyx_t_3;
      __pyx_t_3 = 0;

     3113:         ref_locs = self._set_ref_locs()

      /* "pandas/internals.pyx":3113
     *         """
     *         block = self.blocks.pop(i)
     *         ref_locs = self._set_ref_locs()             # <<<<<<<<<<<<<<
     *         prev_items_map = self._items_map.pop(
     *             block) if ref_locs is not None else None
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_ref_locs = __pyx_t_1;
      __pyx_t_1 = 0;

     3114:         prev_items_map = self._items_map.pop(

        /* "pandas/internals.pyx":3114
     *         block = self.blocks.pop(i)
     *         ref_locs = self._set_ref_locs()
     *         prev_items_map = self._items_map.pop(             # <<<<<<<<<<<<<<
     *             block) if ref_locs is not None else None
     *
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items_map); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_pop); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

        /* "pandas/internals.pyx":3115
     *         ref_locs = self._set_ref_locs()
     *         prev_items_map = self._items_map.pop(
     *             block) if ref_locs is not None else None             # <<<<<<<<<<<<<<
     *
     *         # if we can't consolidate, then we are removing this block in its
     */
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_block);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_block);
        __Pyx_GIVEREF(__pyx_v_block);

        /* "pandas/internals.pyx":3114
     *         block = self.blocks.pop(i)
     *         ref_locs = self._set_ref_locs()
     *         prev_items_map = self._items_map.pop(             # <<<<<<<<<<<<<<
     *             block) if ref_locs is not None else None
     *
     */
        __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_1 = __pyx_t_5;
        __pyx_t_5 = 0;
      } else {

     3115:             block) if ref_locs is not None else None

      /* "pandas/internals.pyx":3115
     *         ref_locs = self._set_ref_locs()
     *         prev_items_map = self._items_map.pop(
     *             block) if ref_locs is not None else None             # <<<<<<<<<<<<<<
     *
     *         # if we can't consolidate, then we are removing this block in its
     */
      __pyx_t_4 = (__pyx_v_ref_locs != Py_None);
      if ((__pyx_t_4 != 0)) {

        /* "pandas/internals.pyx":3115
     *         ref_locs = self._set_ref_locs()
     *         prev_items_map = self._items_map.pop(
     *             block) if ref_locs is not None else None             # <<<<<<<<<<<<<<
     *
     *         # if we can't consolidate, then we are removing this block in its
     */
        __Pyx_INCREF(Py_None);
        __pyx_t_1 = Py_None;
      }
      __pyx_v_prev_items_map = __pyx_t_1;
      __pyx_t_1 = 0;

     3116:

     3117:         # if we can't consolidate, then we are removing this block in its

     3118:         # entirey

     3119:         if block._can_consolidate:

      /* "pandas/internals.pyx":3119
     *         # if we can't consolidate, then we are removing this block in its
     *         # entirey
     *         if block._can_consolidate:             # <<<<<<<<<<<<<<
     *
     *             # compute the split mask
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_can_consolidate); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_4) {

     3120:

     3121:             # compute the split mask

     3122:             loc = block.items.get_loc(item)

        /* "pandas/internals.pyx":3122
     *
     *             # compute the split mask
     *             loc = block.items.get_loc(item)             # <<<<<<<<<<<<<<
     *             if type(loc) == slice or com.is_integer(loc):
     *                 mask = np.array([True] * len(block))
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_loc = __pyx_t_3;
        __pyx_t_3 = 0;

     3123:             if type(loc) == slice or com.is_integer(loc):

        /* "pandas/internals.pyx":3123
     *             # compute the split mask
     *             loc = block.items.get_loc(item)
     *             if type(loc) == slice or com.is_integer(loc):             # <<<<<<<<<<<<<<
     *                 mask = np.array([True] * len(block))
     *                 mask[loc] = False
     */
        __pyx_t_3 = PyObject_RichCompare(((PyObject *)Py_TYPE(__pyx_v_loc)), ((PyObject *)((PyObject*)(&PySlice_Type))), Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (!__pyx_t_4) {
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_is_integer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_loc);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_loc);
          __Pyx_GIVEREF(__pyx_v_loc);
          __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_6 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_7 = __pyx_t_6;
        } else {
          __pyx_t_7 = __pyx_t_4;
        }
        if (__pyx_t_7) {

     3124:                 mask = np.array([True] * len(block))

          /* "pandas/internals.pyx":3124
     *             loc = block.items.get_loc(item)
     *             if type(loc) == slice or com.is_integer(loc):
     *                 mask = np.array([True] * len(block))             # <<<<<<<<<<<<<<
     *                 mask[loc] = False
     *             else:  # already a mask, inverted
     */
          __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_array); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_8 = PyObject_Length(__pyx_v_block); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_5 = PyList_New(1 * ((__pyx_t_8<0) ? 0:__pyx_t_8)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          { Py_ssize_t __pyx_temp;
            for (__pyx_temp=0; __pyx_temp < __pyx_t_8; __pyx_temp++) {
              __Pyx_INCREF(Py_True);
              PyList_SET_ITEM(__pyx_t_5, __pyx_temp, Py_True);
              __Pyx_GIVEREF(Py_True);
            }
          }
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
          __Pyx_GIVEREF(__pyx_t_5);
          __pyx_t_5 = 0;
          __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_mask = __pyx_t_5;
          __pyx_t_5 = 0;

     3125:                 mask[loc] = False

          /* "pandas/internals.pyx":3125
     *             if type(loc) == slice or com.is_integer(loc):
     *                 mask = np.array([True] * len(block))
     *                 mask[loc] = False             # <<<<<<<<<<<<<<
     *             else:  # already a mask, inverted
     *                 mask = -loc
     */
          if (unlikely(PyObject_SetItem(__pyx_v_mask, __pyx_v_loc, Py_False) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3125; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          goto __pyx_L4;
        }
        /*else*/ {

     3126:             else:  # already a mask, inverted

     3127:                 mask = -loc

          /* "pandas/internals.pyx":3127
     *                 mask[loc] = False
     *             else:  # already a mask, inverted
     *                 mask = -loc             # <<<<<<<<<<<<<<
     *
     *             # split the block
     */
          __pyx_t_5 = PyNumber_Negative(__pyx_v_loc); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_v_mask = __pyx_t_5;
          __pyx_t_5 = 0;
        }
        __pyx_L4:;

     3128:

     3129:             # split the block

     3130:             counter = 0

        /* "pandas/internals.pyx":3130
     *
     *             # split the block
     *             counter = 0             # <<<<<<<<<<<<<<
     *             for s, e in com.split_ranges(mask):
     *
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_v_counter = __pyx_int_0;

     3131:             for s, e in com.split_ranges(mask):

        /* "pandas/internals.pyx":3131
     *             # split the block
     *             counter = 0
     *             for s, e in com.split_ranges(mask):             # <<<<<<<<<<<<<<
     *
     *                 sblock = make_block(block.values[s:e],
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_split_ranges); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_mask);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_mask);
        __Pyx_GIVEREF(__pyx_v_mask);
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
          __pyx_t_5 = __pyx_t_3; __Pyx_INCREF(__pyx_t_5); __pyx_t_8 = 0;
          __pyx_t_9 = NULL;
        } else {
          __pyx_t_8 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_9 = Py_TYPE(__pyx_t_5)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        for (;;) {
          if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_5)) {
            if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_8); __Pyx_INCREF(__pyx_t_3); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_5, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_5)) {
            if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_8); __Pyx_INCREF(__pyx_t_3); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_5, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_3 = __pyx_t_9(__pyx_t_5);
            if (unlikely(!__pyx_t_3)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_3);
          }
          if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
            PyObject* sequence = __pyx_t_3;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_1);
            __Pyx_INCREF(__pyx_t_2);
            #else
            __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            #endif
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_10 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
            index = 0; __pyx_t_1 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_1);
            index = 1; __pyx_t_2 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_2)) goto __pyx_L7_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_2);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_11 = NULL;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            goto __pyx_L8_unpacking_done;
            __pyx_L7_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __pyx_t_11 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L8_unpacking_done:;
          }
          __Pyx_XDECREF_SET(__pyx_v_s, __pyx_t_1);
          __pyx_t_1 = 0;
          __Pyx_XDECREF_SET(__pyx_v_e, __pyx_t_2);
          __pyx_t_2 = 0;

     3132:

     3133:                 sblock = make_block(block.values[s:e],

          /* "pandas/internals.pyx":3133
     *             for s, e in com.split_ranges(mask):
     *
     *                 sblock = make_block(block.values[s:e],             # <<<<<<<<<<<<<<
     *                                     block.items[s:e].copy(),
     *                                     block.ref_items,
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_values); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_t_2, 0, 0, &__pyx_v_s, &__pyx_v_e, NULL, 0, 0, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

          /* "pandas/internals.pyx":3133
     *             for s, e in com.split_ranges(mask):
     *
     *                 sblock = make_block(block.values[s:e],             # <<<<<<<<<<<<<<
     *                                     block.items[s:e].copy(),
     *                                     block.ref_items,
     */
          __pyx_t_12 = PyTuple_New(3); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_12);
          PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_2);
          __Pyx_GIVEREF(__pyx_t_2);
          __pyx_t_1 = 0;
          __pyx_t_10 = 0;
          __pyx_t_2 = 0;
          __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);

          /* "pandas/internals.pyx":3133
     *             for s, e in com.split_ranges(mask):
     *
     *                 sblock = make_block(block.values[s:e],             # <<<<<<<<<<<<<<
     *                                     block.items[s:e].copy(),
     *                                     block.ref_items,
     */
          __pyx_t_10 = PyObject_Call(__pyx_t_3, __pyx_t_12, __pyx_t_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_XDECREF_SET(__pyx_v_sblock, __pyx_t_10);
          __pyx_t_10 = 0;

     3134:                                     block.items[s:e].copy(),

          /* "pandas/internals.pyx":3134
     *
     *                 sblock = make_block(block.values[s:e],
     *                                     block.items[s:e].copy(),             # <<<<<<<<<<<<<<
     *                                     block.ref_items,
     *                                     klass=block.__class__,
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_10 = __Pyx_PyObject_GetSlice(__pyx_t_2, 0, 0, &__pyx_v_s, &__pyx_v_e, NULL, 0, 0, 1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_copy); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_t_10 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3135:                                     block.ref_items,

          /* "pandas/internals.pyx":3135
     *                 sblock = make_block(block.values[s:e],
     *                                     block.items[s:e].copy(),
     *                                     block.ref_items,             # <<<<<<<<<<<<<<
     *                                     klass=block.__class__,
     *                                     fastpath=True)
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_ref_items); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3135; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);

     3136:                                     klass=block.__class__,

          /* "pandas/internals.pyx":3136
     *                                     block.items[s:e].copy(),
     *                                     block.ref_items,
     *                                     klass=block.__class__,             # <<<<<<<<<<<<<<
     *                                     fastpath=True)
     *
     */
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_class); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3136; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_klass, __pyx_t_10) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     3137:                                     fastpath=True)

          /* "pandas/internals.pyx":3137
     *                                     block.ref_items,
     *                                     klass=block.__class__,
     *                                     fastpath=True)             # <<<<<<<<<<<<<<
     *
     *                 self.blocks.append(sblock)
     */
          if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3138:

     3139:                 self.blocks.append(sblock)

          /* "pandas/internals.pyx":3139
     *                                     fastpath=True)
     *
     *                 self.blocks.append(sblock)             # <<<<<<<<<<<<<<
     *
     *                 # update the _ref_locs/_items_map
     */
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_13 = __Pyx_PyObject_Append(__pyx_t_10, __pyx_v_sblock); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     3140:

     3141:                 # update the _ref_locs/_items_map

     3142:                 if ref_locs is not None:

          /* "pandas/internals.pyx":3142
     *
     *                 # update the _ref_locs/_items_map
     *                 if ref_locs is not None:             # <<<<<<<<<<<<<<
     *
     *                     # fill the item_map out for this sub-block
     */
          __pyx_t_7 = (__pyx_v_ref_locs != Py_None);
          __pyx_t_4 = (__pyx_t_7 != 0);
          if (__pyx_t_4) {

     3143:

     3144:                     # fill the item_map out for this sub-block

     3145:                     m = maybe_create_block_in_items_map(

            /* "pandas/internals.pyx":3145
     *
     *                     # fill the item_map out for this sub-block
     *                     m = maybe_create_block_in_items_map(             # <<<<<<<<<<<<<<
     *                         self._items_map, sblock)
     *                     for j, itm in enumerate(sblock.items):
     */
            __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_maybe_create_block_in_items_map); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);

            /* "pandas/internals.pyx":3145
     *
     *                     # fill the item_map out for this sub-block
     *                     m = maybe_create_block_in_items_map(             # <<<<<<<<<<<<<<
     *                         self._items_map, sblock)
     *                     for j, itm in enumerate(sblock.items):
     */
            __pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_2);
            __Pyx_INCREF(__pyx_v_sblock);
            PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_v_sblock);
            __Pyx_GIVEREF(__pyx_v_sblock);
            __pyx_t_2 = 0;
            __pyx_t_2 = PyObject_Call(__pyx_t_10, __pyx_t_12, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3145; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_XDECREF_SET(__pyx_v_m, __pyx_t_2);
            __pyx_t_2 = 0;

     3146:                         self._items_map, sblock)

            /* "pandas/internals.pyx":3146
     *                     # fill the item_map out for this sub-block
     *                     m = maybe_create_block_in_items_map(
     *                         self._items_map, sblock)             # <<<<<<<<<<<<<<
     *                     for j, itm in enumerate(sblock.items):
     *
     */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items_map); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3146; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);

     3147:                     for j, itm in enumerate(sblock.items):

            /* "pandas/internals.pyx":3147
     *                     m = maybe_create_block_in_items_map(
     *                         self._items_map, sblock)
     *                     for j, itm in enumerate(sblock.items):             # <<<<<<<<<<<<<<
     *
     *                         # is this item masked (e.g. was deleted)?
     */
            __Pyx_INCREF(__pyx_int_0);
            __pyx_t_2 = __pyx_int_0;
            __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_sblock, __pyx_n_s_items); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            if (PyList_CheckExact(__pyx_t_12) || PyTuple_CheckExact(__pyx_t_12)) {
              __pyx_t_10 = __pyx_t_12; __Pyx_INCREF(__pyx_t_10); __pyx_t_14 = 0;
              __pyx_t_15 = NULL;
            } else {
              __pyx_t_14 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_t_12); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_10);
              __pyx_t_15 = Py_TYPE(__pyx_t_10)->tp_iternext;
            }
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            for (;;) {
              if (!__pyx_t_15 && PyList_CheckExact(__pyx_t_10)) {
                if (__pyx_t_14 >= PyList_GET_SIZE(__pyx_t_10)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_12 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_14); __Pyx_INCREF(__pyx_t_12); __pyx_t_14++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_12 = PySequence_ITEM(__pyx_t_10, __pyx_t_14); __pyx_t_14++; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else if (!__pyx_t_15 && PyTuple_CheckExact(__pyx_t_10)) {
                if (__pyx_t_14 >= PyTuple_GET_SIZE(__pyx_t_10)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_12 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_14); __Pyx_INCREF(__pyx_t_12); __pyx_t_14++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_12 = PySequence_ITEM(__pyx_t_10, __pyx_t_14); __pyx_t_14++; if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else {
                __pyx_t_12 = __pyx_t_15(__pyx_t_10);
                if (unlikely(!__pyx_t_12)) {
                  PyObject* exc_type = PyErr_Occurred();
                  if (exc_type) {
                    if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                    else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                  }
                  break;
                }
                __Pyx_GOTREF(__pyx_t_12);
              }
              __Pyx_XDECREF_SET(__pyx_v_itm, __pyx_t_12);
              __pyx_t_12 = 0;
              __Pyx_INCREF(__pyx_t_2);
              __Pyx_XDECREF_SET(__pyx_v_j, __pyx_t_2);
              __pyx_t_12 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_DECREF(__pyx_t_2);
              __pyx_t_2 = __pyx_t_12;
              __pyx_t_12 = 0;

     3148:

     3149:                         # is this item masked (e.g. was deleted)?

     3150:                         while (True):

              /* "pandas/internals.pyx":3150
     *
     *                         # is this item masked (e.g. was deleted)?
     *                         while (True):             # <<<<<<<<<<<<<<
     *
     *                             if counter > len(mask) or mask[counter]:
     */
              while (1) {

     3151:

     3152:                             if counter > len(mask) or mask[counter]:

                /* "pandas/internals.pyx":3152
     *                         while (True):
     *
     *                             if counter > len(mask) or mask[counter]:             # <<<<<<<<<<<<<<
     *                                 break
     *                             else:
     */
                __pyx_t_16 = PyObject_Length(__pyx_v_mask); if (unlikely(__pyx_t_16 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __pyx_t_12 = PyInt_FromSsize_t(__pyx_t_16); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_GOTREF(__pyx_t_12);
                __pyx_t_3 = PyObject_RichCompare(__pyx_v_counter, __pyx_t_12, Py_GT); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
                __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                if (!__pyx_t_4) {
                  __pyx_t_3 = PyObject_GetItem(__pyx_v_mask, __pyx_v_counter); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3152; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
                  __Pyx_GOTREF(__pyx_t_3);
                  __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                  __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
                  __pyx_t_6 = __pyx_t_7;
                } else {
                  __pyx_t_6 = __pyx_t_4;
                }
                if (__pyx_t_6) {

     3153:                                 break

                  /* "pandas/internals.pyx":3153
     *
     *                             if counter > len(mask) or mask[counter]:
     *                                 break             # <<<<<<<<<<<<<<
     *                             else:
     *                                 counter += 1
     */
                  goto __pyx_L13_break;
                }
                /*else*/ {

     3154:                             else:

     3155:                                 counter += 1

                  /* "pandas/internals.pyx":3155
     *                                 break
     *                             else:
     *                                 counter += 1             # <<<<<<<<<<<<<<
     *
     *                         # find my mapping location
     */
                  __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_counter, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3155; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                  __Pyx_GOTREF(__pyx_t_3);
                  __Pyx_DECREF_SET(__pyx_v_counter, __pyx_t_3);
                  __pyx_t_3 = 0;
                }
              }
              __pyx_L13_break:;

     3156:

     3157:                         # find my mapping location

     3158:                         m[j] = prev_items_map[counter]

              /* "pandas/internals.pyx":3158
     *
     *                         # find my mapping location
     *                         m[j] = prev_items_map[counter]             # <<<<<<<<<<<<<<
     *                         counter += 1
     *
     */
              __pyx_t_3 = PyObject_GetItem(__pyx_v_prev_items_map, __pyx_v_counter); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3158; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
              __Pyx_GOTREF(__pyx_t_3);
              if (unlikely(PyObject_SetItem(__pyx_v_m, __pyx_v_j, __pyx_t_3) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3158; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3159:                         counter += 1

              /* "pandas/internals.pyx":3159
     *                         # find my mapping location
     *                         m[j] = prev_items_map[counter]
     *                         counter += 1             # <<<<<<<<<<<<<<
     *
     *                     # set the ref_locs in this block
     */
              __pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_counter, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3159; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __Pyx_DECREF_SET(__pyx_v_counter, __pyx_t_3);
              __pyx_t_3 = 0;
            }
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3160:

     3161:                     # set the ref_locs in this block

     3162:                     sblock.set_ref_locs(m)

            /* "pandas/internals.pyx":3162
     *
     *                     # set the ref_locs in this block
     *                     sblock.set_ref_locs(m)             # <<<<<<<<<<<<<<
     *
     *         # reset the ref_locs to the new structure
     */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_sblock, __pyx_n_s_set_ref_locs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3162; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3162; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_INCREF(__pyx_v_m);
            PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_m);
            __Pyx_GIVEREF(__pyx_v_m);
            __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3162; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L9;
          }
          __pyx_L9:;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     3163:

     3164:         # reset the ref_locs to the new structure

     3165:         if ref_locs is not None:

      /* "pandas/internals.pyx":3165
     *
     *         # reset the ref_locs to the new structure
     *         if ref_locs is not None:             # <<<<<<<<<<<<<<
     *
     *             # items_map is now good, with the original locations
     */
      __pyx_t_6 = (__pyx_v_ref_locs != Py_None);
      __pyx_t_4 = (__pyx_t_6 != 0);
      if (__pyx_t_4) {

     3166:

     3167:             # items_map is now good, with the original locations

     3168:             self._set_ref_locs(do_refs=True)

        /* "pandas/internals.pyx":3168
     *
     *             # items_map is now good, with the original locations
     *             self._set_ref_locs(do_refs=True)             # <<<<<<<<<<<<<<
     *
     *             # reset the ref_locs based on the now good block._ref_locs
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_do_refs, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_10 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3168; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;

     3169:

     3170:             # reset the ref_locs based on the now good block._ref_locs

     3171:             self._reset_ref_locs()

        /* "pandas/internals.pyx":3171
     *
     *             # reset the ref_locs based on the now good block._ref_locs
     *             self._reset_ref_locs()             # <<<<<<<<<<<<<<
     *
     *     def _add_new_block(self, item, value, loc=None):
     */
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reset_ref_locs_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3171; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_3 = PyObject_Call(__pyx_t_10, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3171; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L15;
      }
      __pyx_L15:;

     3172:

     3173:     def _add_new_block(self, item, value, loc=None):

    /* "pandas/internals.pyx":3173
     *             self._reset_ref_locs()
     *
     *     def _add_new_block(self, item, value, loc=None):             # <<<<<<<<<<<<<<
     *         # Do we care about dtype at the moment?
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_151_add_new_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_151_add_new_block = {__Pyx_NAMESTR("_add_new_block"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_151_add_new_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_151_add_new_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_loc = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_add_new_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,&__pyx_n_s_value,&__pyx_n_s_loc,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_add_new_block", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_add_new_block", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_loc);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_add_new_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
        __pyx_v_value = values[2];
        __pyx_v_loc = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_add_new_block", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._add_new_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_150_add_new_block(__pyx_self, __pyx_v_self, __pyx_v_item, __pyx_v_value, __pyx_v_loc);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_150_add_new_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item, PyObject *__pyx_v_value, PyObject *__pyx_v_loc) {
      PyObject *__pyx_v_new_block = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_add_new_block", 0);
      __Pyx_INCREF(__pyx_v_loc);

      /* "pandas/internals.pyx":3173
     *             self._reset_ref_locs()
     *
     *     def _add_new_block(self, item, value, loc=None):             # <<<<<<<<<<<<<<
     *         # Do we care about dtype at the moment?
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.BlockManager._add_new_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_block);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3173
     *             self._reset_ref_locs()
     *
     *     def _add_new_block(self, item, value, loc=None):             # <<<<<<<<<<<<<<
     *         # Do we care about dtype at the moment?
     *
     */
      __pyx_tuple__639 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_value, __pyx_n_s_loc, __pyx_n_s_new_block, __pyx_n_s_i); if (unlikely(!__pyx_tuple__639)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__639);
      __Pyx_GIVEREF(__pyx_tuple__639);
      __pyx_codeobj__640 = (PyObject*)__Pyx_PyCode_New(4, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__639, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_add_new_block, 3173, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__640)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3173
     *             self._reset_ref_locs()
     *
     *     def _add_new_block(self, item, value, loc=None):             # <<<<<<<<<<<<<<
     *         # Do we care about dtype at the moment?
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_151_add_new_block, 0, __pyx_n_s_BlockManager__add_new_block, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__640)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__641);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_add_new_block, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__641 = PyTuple_Pack(1, ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__641)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3173; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__641);
      __Pyx_GIVEREF(__pyx_tuple__641);

     3174:         # Do we care about dtype at the moment?

     3175:

     3176:         # hm, elaborate hack?

     3177:         if loc is None:

      /* "pandas/internals.pyx":3177
     *
     *         # hm, elaborate hack?
     *         if loc is None:             # <<<<<<<<<<<<<<
     *             loc = self.items.get_loc(item)
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),
     */
      __pyx_t_1 = (__pyx_v_loc == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     3178:             loc = self.items.get_loc(item)

        /* "pandas/internals.pyx":3178
     *         # hm, elaborate hack?
     *         if loc is None:
     *             loc = self.items.get_loc(item)             # <<<<<<<<<<<<<<
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),
     *                                self.items, fastpath=True)
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3178; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_get_loc); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3178; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3178; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3178; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_loc, __pyx_t_5);
        __pyx_t_5 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     3179:         new_block = make_block(value, self.items[loc:loc + 1].copy(),

      /* "pandas/internals.pyx":3179
     *         if loc is None:
     *             loc = self.items.get_loc(item)
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),             # <<<<<<<<<<<<<<
     *                                self.items, fastpath=True)
     *         self.blocks.append(new_block)
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyNumber_Add(__pyx_v_loc, __pyx_int_1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_6 = __Pyx_PyObject_GetSlice(__pyx_t_3, 0, 0, &__pyx_v_loc, &__pyx_t_4, NULL, 0, 0, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_copy); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "pandas/internals.pyx":3179
     *         if loc is None:
     *             loc = self.items.get_loc(item)
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),             # <<<<<<<<<<<<<<
     *                                self.items, fastpath=True)
     *         self.blocks.append(new_block)
     */
      __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_6 = 0;
      __pyx_t_4 = 0;
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);

      /* "pandas/internals.pyx":3179
     *         if loc is None:
     *             loc = self.items.get_loc(item)
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),             # <<<<<<<<<<<<<<
     *                                self.items, fastpath=True)
     *         self.blocks.append(new_block)
     */
      __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_new_block = __pyx_t_6;
      __pyx_t_6 = 0;

     3180:                                self.items, fastpath=True)

      /* "pandas/internals.pyx":3180
     *             loc = self.items.get_loc(item)
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),
     *                                self.items, fastpath=True)             # <<<<<<<<<<<<<<
     *         self.blocks.append(new_block)
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3180; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);

      /* "pandas/internals.pyx":3180
     *             loc = self.items.get_loc(item)
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),
     *                                self.items, fastpath=True)             # <<<<<<<<<<<<<<
     *         self.blocks.append(new_block)
     *
     */
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3179; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3181:         self.blocks.append(new_block)

      /* "pandas/internals.pyx":3181
     *         new_block = make_block(value, self.items[loc:loc + 1].copy(),
     *                                self.items, fastpath=True)
     *         self.blocks.append(new_block)             # <<<<<<<<<<<<<<
     *
     *         # set ref_locs based on the this new block
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3181; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = __Pyx_PyObject_Append(__pyx_t_6, __pyx_v_new_block); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3181; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3182:

     3183:         # set ref_locs based on the this new block

     3184:         # and add to the ref/items maps

     3185:         if not self.items.is_unique:

      /* "pandas/internals.pyx":3185
     *         # set ref_locs based on the this new block
     *         # and add to the ref/items maps
     *         if not self.items.is_unique:             # <<<<<<<<<<<<<<
     *
     *             # insert into the ref_locs at the appropriate location
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_1 = ((!__pyx_t_2) != 0);
      if (__pyx_t_1) {

     3186:

     3187:             # insert into the ref_locs at the appropriate location

     3188:             # _ref_locs is already long enough,

     3189:             # but may need to shift elements

     3190:             new_block.set_ref_locs([0])

        /* "pandas/internals.pyx":3190
     *             # _ref_locs is already long enough,
     *             # but may need to shift elements
     *             new_block.set_ref_locs([0])             # <<<<<<<<<<<<<<
     *
     *             # need to shift elements to the right
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_block, __pyx_n_s_set_ref_locs); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_int_0);
        PyList_SET_ITEM(__pyx_t_6, 0, __pyx_int_0);
        __Pyx_GIVEREF(__pyx_int_0);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3190; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3191:

     3192:             # need to shift elements to the right

     3193:             if self._ref_locs[loc] is not None:

        /* "pandas/internals.pyx":3193
     *
     *             # need to shift elements to the right
     *             if self._ref_locs[loc] is not None:             # <<<<<<<<<<<<<<
     *                 for i in reversed(lrange(loc + 1, len(self._ref_locs))):
     *                     self._ref_locs[i] = self._ref_locs[i - 1]
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3193; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_3 = PyObject_GetItem(__pyx_t_6, __pyx_v_loc); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3193; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_1 = (__pyx_t_3 != Py_None);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_2 = (__pyx_t_1 != 0);
        if (__pyx_t_2) {

     3194:                 for i in reversed(lrange(loc + 1, len(self._ref_locs))):

          /* "pandas/internals.pyx":3194
     *             # need to shift elements to the right
     *             if self._ref_locs[loc] is not None:
     *                 for i in reversed(lrange(loc + 1, len(self._ref_locs))):             # <<<<<<<<<<<<<<
     *                     self._ref_locs[i] = self._ref_locs[i - 1]
     *
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_lrange); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyNumber_Add(__pyx_v_loc, __pyx_int_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_8 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_8); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
          __Pyx_GIVEREF(__pyx_t_6);
          PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_6 = 0;
          __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_Call(__pyx_builtin_reversed, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (PyList_CheckExact(__pyx_t_4) || PyTuple_CheckExact(__pyx_t_4)) {
            __pyx_t_5 = __pyx_t_4; __Pyx_INCREF(__pyx_t_5); __pyx_t_8 = 0;
            __pyx_t_9 = NULL;
          } else {
            __pyx_t_8 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_9 = Py_TYPE(__pyx_t_5)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          for (;;) {
            if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_5)) {
              if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_4 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_8); __Pyx_INCREF(__pyx_t_4); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_5)) {
              if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_8); __Pyx_INCREF(__pyx_t_4); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_4 = PySequence_ITEM(__pyx_t_5, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_4 = __pyx_t_9(__pyx_t_5);
              if (unlikely(!__pyx_t_4)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3194; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_4);
            }
            __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_4);
            __pyx_t_4 = 0;

     3195:                     self._ref_locs[i] = self._ref_locs[i - 1]

            /* "pandas/internals.pyx":3195
     *             if self._ref_locs[loc] is not None:
     *                 for i in reversed(lrange(loc + 1, len(self._ref_locs))):
     *                     self._ref_locs[i] = self._ref_locs[i - 1]             # <<<<<<<<<<<<<<
     *
     *             self._ref_locs[loc] = (new_block, 0)
     */
            __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_3 = PyNumber_Subtract(__pyx_v_i, __pyx_int_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_6 = PyObject_GetItem(__pyx_t_4, __pyx_t_3); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3195; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            if (unlikely(PyObject_SetItem(__pyx_t_3, __pyx_v_i, __pyx_t_6) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3195; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          }
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          goto __pyx_L5;
        }
        __pyx_L5:;

     3196:

     3197:             self._ref_locs[loc] = (new_block, 0)

        /* "pandas/internals.pyx":3197
     *                     self._ref_locs[i] = self._ref_locs[i - 1]
     *
     *             self._ref_locs[loc] = (new_block, 0)             # <<<<<<<<<<<<<<
     *
     *             # and reset
     */
        __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_new_block);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_new_block);
        __Pyx_GIVEREF(__pyx_v_new_block);
        __Pyx_INCREF(__pyx_int_0);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_int_0);
        __Pyx_GIVEREF(__pyx_int_0);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        if (unlikely(PyObject_SetItem(__pyx_t_6, __pyx_v_loc, __pyx_t_5) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3197; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3198:

     3199:             # and reset

     3200:             self._reset_ref_locs()

        /* "pandas/internals.pyx":3200
     *
     *             # and reset
     *             self._reset_ref_locs()             # <<<<<<<<<<<<<<
     *             self._set_ref_locs(do_refs=True)
     *
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reset_ref_locs_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3201:             self._set_ref_locs(do_refs=True)

        /* "pandas/internals.pyx":3201
     *             # and reset
     *             self._reset_ref_locs()
     *             self._set_ref_locs(do_refs=True)             # <<<<<<<<<<<<<<
     *
     *     def _find_block(self, item):
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_do_refs, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, __pyx_t_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     3202:

     3203:     def _find_block(self, item):

    /* "pandas/internals.pyx":3203
     *             self._set_ref_locs(do_refs=True)
     *
     *     def _find_block(self, item):             # <<<<<<<<<<<<<<
     *         self._check_have(item)
     *         for i, block in enumerate(self.blocks):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_153_find_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_153_find_block = {__Pyx_NAMESTR("_find_block"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_153_find_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_153_find_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_find_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_find_block", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3203; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_find_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3203; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_find_block", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3203; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._find_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_152_find_block(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_152_find_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_find_block", 0);

      /* "pandas/internals.pyx":3203
     *             self._set_ref_locs(do_refs=True)
     *
     *     def _find_block(self, item):             # <<<<<<<<<<<<<<
     *         self._check_have(item)
     *         for i, block in enumerate(self.blocks):
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager._find_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3203
     *             self._set_ref_locs(do_refs=True)
     *
     *     def _find_block(self, item):             # <<<<<<<<<<<<<<
     *         self._check_have(item)
     *         for i, block in enumerate(self.blocks):
     */
      __pyx_tuple__642 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_item, __pyx_n_s_i, __pyx_n_s_block); if (unlikely(!__pyx_tuple__642)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__642);
      __Pyx_GIVEREF(__pyx_tuple__642);

      /* "pandas/internals.pyx":3203
     *             self._set_ref_locs(do_refs=True)
     *
     *     def _find_block(self, item):             # <<<<<<<<<<<<<<
     *         self._check_have(item)
     *         for i, block in enumerate(self.blocks):
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_153_find_block, 0, __pyx_n_s_BlockManager__find_block, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__643)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_find_block, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__643 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__642, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_find_block, 3203, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__643)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3203; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3204:         self._check_have(item)

      /* "pandas/internals.pyx":3204
     *
     *     def _find_block(self, item):
     *         self._check_have(item)             # <<<<<<<<<<<<<<
     *         for i, block in enumerate(self.blocks):
     *             if item in block:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_check_have); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3204; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3204; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3204; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3205:         for i, block in enumerate(self.blocks):

      /* "pandas/internals.pyx":3205
     *     def _find_block(self, item):
     *         self._check_have(item)
     *         for i, block in enumerate(self.blocks):             # <<<<<<<<<<<<<<
     *             if item in block:
     *                 return i, block
     */
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_3 = __pyx_int_0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_5(__pyx_t_1);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_2);
        __pyx_t_2 = 0;
        __Pyx_INCREF(__pyx_t_3);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
        __pyx_t_2 = PyNumber_Add(__pyx_t_3, __pyx_int_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3);
        __pyx_t_3 = __pyx_t_2;
        __pyx_t_2 = 0;

     3206:             if item in block:

        /* "pandas/internals.pyx":3206
     *         self._check_have(item)
     *         for i, block in enumerate(self.blocks):
     *             if item in block:             # <<<<<<<<<<<<<<
     *                 return i, block
     *
     */
        __pyx_t_6 = (__Pyx_PySequence_Contains(__pyx_v_item, __pyx_v_block, Py_EQ)); if (unlikely(__pyx_t_6 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3206; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_7 = (__pyx_t_6 != 0);
        if (__pyx_t_7) {

     3207:                 return i, block

          /* "pandas/internals.pyx":3207
     *         for i, block in enumerate(self.blocks):
     *             if item in block:
     *                 return i, block             # <<<<<<<<<<<<<<
     *
     *     def _check_have(self, item):
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3207; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_block);
          PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_block);
          __Pyx_GIVEREF(__pyx_v_block);
          __pyx_r = __pyx_t_2;
          __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          goto __pyx_L0;
        }
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3208:

     3209:     def _check_have(self, item):

    /* "pandas/internals.pyx":3209
     *                 return i, block
     *
     *     def _check_have(self, item):             # <<<<<<<<<<<<<<
     *         if item not in self.items:
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_155_check_have(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_155_check_have = {__Pyx_NAMESTR("_check_have"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_155_check_have, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_155_check_have(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_check_have (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_item,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_check_have", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3209; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_check_have") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3209; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_item = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_check_have", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3209; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._check_have", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_154_check_have(__pyx_self, __pyx_v_self, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_154_check_have(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_item) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_check_have", 0);

      /* "pandas/internals.pyx":3209
     *                 return i, block
     *
     *     def _check_have(self, item):             # <<<<<<<<<<<<<<
     *         if item not in self.items:
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.BlockManager._check_have", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3209
     *                 return i, block
     *
     *     def _check_have(self, item):             # <<<<<<<<<<<<<<
     *         if item not in self.items:
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     */
      __pyx_tuple__644 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_item); if (unlikely(!__pyx_tuple__644)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__644);
      __Pyx_GIVEREF(__pyx_tuple__644);

      /* "pandas/internals.pyx":3209
     *                 return i, block
     *
     *     def _check_have(self, item):             # <<<<<<<<<<<<<<
     *         if item not in self.items:
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_155_check_have, 0, __pyx_n_s_BlockManager__check_have, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__645)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_check_have, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__645 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__644, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_check_have, 3209, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__645)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3210:         if item not in self.items:

      /* "pandas/internals.pyx":3210
     *
     *     def _check_have(self, item):
     *         if item not in self.items:             # <<<<<<<<<<<<<<
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = (__Pyx_PySequence_Contains(__pyx_v_item, __pyx_t_1, Py_NE)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3210; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     3211:             raise KeyError('no item named %s' % com.pprint_thing(item))

        /* "pandas/internals.pyx":3211
     *     def _check_have(self, item):
     *         if item not in self.items:
     *             raise KeyError('no item named %s' % com.pprint_thing(item))             # <<<<<<<<<<<<<<
     *
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_pprint_thing); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_item);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_item);
        __Pyx_GIVEREF(__pyx_v_item);
        __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_no_item_named_s, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_KeyError, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3211; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     3212:

     3213:     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,

    /* "pandas/internals.pyx":3213
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     *
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,             # <<<<<<<<<<<<<<
     *                      fill_value=None, limit=None, copy=True):
     *         new_axis = _ensure_index(new_axis)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_157reindex_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_157reindex_axis = {__Pyx_NAMESTR("reindex_axis"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_157reindex_axis, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_157reindex_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_axis = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_axis,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_axis,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_copy,0};
        PyObject* values[8] = {0,0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        values[4] = ((PyObject *)((PyObject *)__pyx_int_0));

      /* "pandas/internals.pyx":3213
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     *
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,             # <<<<<<<<<<<<<<
     *                      fill_value=None, limit=None, copy=True):
     *         new_axis = _ensure_index(new_axis)
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_156reindex_axis(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_axis, PyObject *__pyx_v_indexer, PyObject *__pyx_v_method, PyObject *__pyx_v_axis, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_limit, PyObject *__pyx_v_copy) {
      PyObject *__pyx_v_cur_axis = NULL;
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis", 0);
      __Pyx_INCREF(__pyx_v_new_axis);
      __Pyx_INCREF(__pyx_v_indexer);

      /* "pandas/internals.pyx":3213
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     *
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,             # <<<<<<<<<<<<<<
     *                      fill_value=None, limit=None, copy=True):
     *         new_axis = _ensure_index(new_axis)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_cur_axis);
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_new_axis);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3213
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     *
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,             # <<<<<<<<<<<<<<
     *                      fill_value=None, limit=None, copy=True):
     *         new_axis = _ensure_index(new_axis)
     */
      __pyx_tuple__646 = PyTuple_Pack(11, __pyx_n_s_self, __pyx_n_s_new_axis, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_axis, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_copy, __pyx_n_s_cur_axis, __pyx_n_s_result, __pyx_n_s_blk); if (unlikely(!__pyx_tuple__646)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__646);
      __Pyx_GIVEREF(__pyx_tuple__646);
      __pyx_codeobj__647 = (PyObject*)__Pyx_PyCode_New(8, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__646, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_axis, 3213, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__647)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3213
     *             raise KeyError('no item named %s' % com.pprint_thing(item))
     *
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,             # <<<<<<<<<<<<<<
     *                      fill_value=None, limit=None, copy=True):
     *         new_axis = _ensure_index(new_axis)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_157reindex_axis, 0, __pyx_n_s_BlockManager_reindex_axis, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__647)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__648);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_axis, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__648 = PyTuple_Pack(6, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)__pyx_int_0), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__648)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__648);
      __Pyx_GIVEREF(__pyx_tuple__648);

     3214:                      fill_value=None, limit=None, copy=True):

        /* "pandas/internals.pyx":3214
     *
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,
     *                      fill_value=None, limit=None, copy=True):             # <<<<<<<<<<<<<<
     *         new_axis = _ensure_index(new_axis)
     *         cur_axis = self.axes[axis]
     */
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_None));
        values[7] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_axis", 0, 2, 8, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[6] = value; kw_args--; }
            }
            case  7:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[7] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_axis") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  8: values[7] = PyTuple_GET_ITEM(__pyx_args, 7);
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_axis = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_method = values[3];
        __pyx_v_axis = values[4];
        __pyx_v_fill_value = values[5];
        __pyx_v_limit = values[6];
        __pyx_v_copy = values[7];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_axis", 0, 2, 8, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3213; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_156reindex_axis(__pyx_self, __pyx_v_self, __pyx_v_new_axis, __pyx_v_indexer, __pyx_v_method, __pyx_v_axis, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_copy);

     3215:         new_axis = _ensure_index(new_axis)

      /* "pandas/internals.pyx":3215
     *     def reindex_axis(self, new_axis, indexer=None, method=None, axis=0,
     *                      fill_value=None, limit=None, copy=True):
     *         new_axis = _ensure_index(new_axis)             # <<<<<<<<<<<<<<
     *         cur_axis = self.axes[axis]
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3215; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3215; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_axis);
      __Pyx_GIVEREF(__pyx_v_new_axis);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3215; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_new_axis, __pyx_t_3);
      __pyx_t_3 = 0;

     3216:         cur_axis = self.axes[axis]

      /* "pandas/internals.pyx":3216
     *                      fill_value=None, limit=None, copy=True):
     *         new_axis = _ensure_index(new_axis)
     *         cur_axis = self.axes[axis]             # <<<<<<<<<<<<<<
     *
     *         if new_axis.equals(cur_axis):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3216; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyObject_GetItem(__pyx_t_3, __pyx_v_axis); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3216; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_cur_axis = __pyx_t_2;
      __pyx_t_2 = 0;

     3217:

     3218:         if new_axis.equals(cur_axis):

      /* "pandas/internals.pyx":3218
     *         cur_axis = self.axes[axis]
     *
     *         if new_axis.equals(cur_axis):             # <<<<<<<<<<<<<<
     *             if copy:
     *                 result = self.copy(deep=True)
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_axis, __pyx_n_s_equals); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_cur_axis);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_cur_axis);
      __Pyx_GIVEREF(__pyx_v_cur_axis);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3218; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_4) {

     3219:             if copy:

        /* "pandas/internals.pyx":3219
     *
     *         if new_axis.equals(cur_axis):
     *             if copy:             # <<<<<<<<<<<<<<
     *                 result = self.copy(deep=True)
     *                 result.axes[axis] = new_axis
     */
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3219; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_4) {

     3220:                 result = self.copy(deep=True)

          /* "pandas/internals.pyx":3220
     *         if new_axis.equals(cur_axis):
     *             if copy:
     *                 result = self.copy(deep=True)             # <<<<<<<<<<<<<<
     *                 result.axes[axis] = new_axis
     *                 result._shape = None
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_copy); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_deep, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3220; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_v_result = __pyx_t_2;
          __pyx_t_2 = 0;

     3221:                 result.axes[axis] = new_axis

          /* "pandas/internals.pyx":3221
     *             if copy:
     *                 result = self.copy(deep=True)
     *                 result.axes[axis] = new_axis             # <<<<<<<<<<<<<<
     *                 result._shape = None
     *
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3221; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          if (unlikely(PyObject_SetItem(__pyx_t_2, __pyx_v_axis, __pyx_v_new_axis) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3221; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3222:                 result._shape = None

          /* "pandas/internals.pyx":3222
     *                 result = self.copy(deep=True)
     *                 result.axes[axis] = new_axis
     *                 result._shape = None             # <<<<<<<<<<<<<<
     *
     *                 if axis == 0:
     */
          if (__Pyx_PyObject_SetAttrStr(__pyx_v_result, __pyx_n_s_shape_2, Py_None) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3222; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3223:

     3224:                 if axis == 0:

          /* "pandas/internals.pyx":3224
     *                 result._shape = None
     *
     *                 if axis == 0:             # <<<<<<<<<<<<<<
     *                     # patch ref_items, #1823
     *                     for blk in result.blocks:
     */
          __pyx_t_2 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3224; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3224; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          if (__pyx_t_4) {

     3225:                     # patch ref_items, #1823

     3226:                     for blk in result.blocks:

            /* "pandas/internals.pyx":3226
     *                 if axis == 0:
     *                     # patch ref_items, #1823
     *                     for blk in result.blocks:             # <<<<<<<<<<<<<<
     *                         blk.ref_items = new_axis
     *
     */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
              __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_5 = 0;
              __pyx_t_6 = NULL;
            } else {
              __pyx_t_5 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __pyx_t_6 = Py_TYPE(__pyx_t_3)->tp_iternext;
            }
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            for (;;) {
              if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_3)) {
                if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_3)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_3)) {
                if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_2 = PySequence_ITEM(__pyx_t_3, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else {
                __pyx_t_2 = __pyx_t_6(__pyx_t_3);
                if (unlikely(!__pyx_t_2)) {
                  PyObject* exc_type = PyErr_Occurred();
                  if (exc_type) {
                    if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                    else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3226; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                  }
                  break;
                }
                __Pyx_GOTREF(__pyx_t_2);
              }
              __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_2);
              __pyx_t_2 = 0;

     3227:                         blk.ref_items = new_axis

              /* "pandas/internals.pyx":3227
     *                     # patch ref_items, #1823
     *                     for blk in result.blocks:
     *                         blk.ref_items = new_axis             # <<<<<<<<<<<<<<
     *
     *                 return result
     */
              if (__Pyx_PyObject_SetAttrStr(__pyx_v_blk, __pyx_n_s_ref_items, __pyx_v_new_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3227; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            goto __pyx_L5;
          }
          __pyx_L5:;

     3228:

     3229:                 return result

          /* "pandas/internals.pyx":3229
     *                         blk.ref_items = new_axis
     *
     *                 return result             # <<<<<<<<<<<<<<
     *             else:
     *                 return self
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_result);
          __pyx_r = __pyx_v_result;
          goto __pyx_L0;
        }
        /*else*/ {

     3230:             else:

     3231:                 return self

          /* "pandas/internals.pyx":3231
     *                 return result
     *             else:
     *                 return self             # <<<<<<<<<<<<<<
     *
     *         if axis == 0:
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_self);
          __pyx_r = __pyx_v_self;
          goto __pyx_L0;
        }
      }

     3232:

     3233:         if axis == 0:

      /* "pandas/internals.pyx":3233
     *                 return self
     *
     *         if axis == 0:             # <<<<<<<<<<<<<<
     *             if method is not None or limit is not None:
     *                 return self.reindex_axis0_with_method(
     */
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     3234:             if method is not None or limit is not None:

        /* "pandas/internals.pyx":3234
     *
     *         if axis == 0:
     *             if method is not None or limit is not None:             # <<<<<<<<<<<<<<
     *                 return self.reindex_axis0_with_method(
     *                     new_axis, indexer=indexer, method=method,
     */
        __pyx_t_4 = (__pyx_v_method != Py_None);
        if (!(__pyx_t_4 != 0)) {
          __pyx_t_7 = (__pyx_v_limit != Py_None);
          __pyx_t_8 = (__pyx_t_7 != 0);
        } else {
          __pyx_t_8 = (__pyx_t_4 != 0);
        }
        if (__pyx_t_8) {

     3235:                 return self.reindex_axis0_with_method(

          /* "pandas/internals.pyx":3235
     *         if axis == 0:
     *             if method is not None or limit is not None:
     *                 return self.reindex_axis0_with_method(             # <<<<<<<<<<<<<<
     *                     new_axis, indexer=indexer, method=method,
     *                     fill_value=fill_value, limit=limit, copy=copy
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex_axis0_with_method); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);

          /* "pandas/internals.pyx":3236
     *             if method is not None or limit is not None:
     *                 return self.reindex_axis0_with_method(
     *                     new_axis, indexer=indexer, method=method,             # <<<<<<<<<<<<<<
     *                     fill_value=fill_value, limit=limit, copy=copy
     *                 )
     */
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_v_new_axis);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_axis);
          __Pyx_GIVEREF(__pyx_v_new_axis);

          /* "pandas/internals.pyx":3235
     *         if axis == 0:
     *             if method is not None or limit is not None:
     *                 return self.reindex_axis0_with_method(             # <<<<<<<<<<<<<<
     *                     new_axis, indexer=indexer, method=method,
     *                     fill_value=fill_value, limit=limit, copy=copy
     */
          __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

          /* "pandas/internals.pyx":3235
     *         if axis == 0:
     *             if method is not None or limit is not None:
     *                 return self.reindex_axis0_with_method(             # <<<<<<<<<<<<<<
     *                     new_axis, indexer=indexer, method=method,
     *                     fill_value=fill_value, limit=limit, copy=copy
     */
          __pyx_t_9 = PyObject_Call(__pyx_t_3, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_r = __pyx_t_9;
          __pyx_t_9 = 0;
          goto __pyx_L0;
        }

     3236:                     new_axis, indexer=indexer, method=method,

          /* "pandas/internals.pyx":3236
     *             if method is not None or limit is not None:
     *                 return self.reindex_axis0_with_method(
     *                     new_axis, indexer=indexer, method=method,             # <<<<<<<<<<<<<<
     *                     fill_value=fill_value, limit=limit, copy=copy
     *                 )
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_indexer, __pyx_v_indexer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_method, __pyx_v_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3237:                     fill_value=fill_value, limit=limit, copy=copy

          /* "pandas/internals.pyx":3237
     *                 return self.reindex_axis0_with_method(
     *                     new_axis, indexer=indexer, method=method,
     *                     fill_value=fill_value, limit=limit, copy=copy             # <<<<<<<<<<<<<<
     *                 )
     *             return self.reindex_items(new_axis, indexer=indexer, copy=copy,
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3238:                 )

          /* "pandas/internals.pyx":3238
     *                     new_axis, indexer=indexer, method=method,
     *                     fill_value=fill_value, limit=limit, copy=copy
     *                 )             # <<<<<<<<<<<<<<
     *             return self.reindex_items(new_axis, indexer=indexer, copy=copy,
     *                                       fill_value=fill_value)
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3235; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3239:             return self.reindex_items(new_axis, indexer=indexer, copy=copy,

        /* "pandas/internals.pyx":3239
     *                     fill_value=fill_value, limit=limit, copy=copy
     *                 )
     *             return self.reindex_items(new_axis, indexer=indexer, copy=copy,             # <<<<<<<<<<<<<<
     *                                       fill_value=fill_value)
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3239; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3239; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_new_axis);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new_axis);
        __Pyx_GIVEREF(__pyx_v_new_axis);
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3239; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_indexer, __pyx_v_indexer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3239; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3239; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":3239
     *                     fill_value=fill_value, limit=limit, copy=copy
     *                 )
     *             return self.reindex_items(new_axis, indexer=indexer, copy=copy,             # <<<<<<<<<<<<<<
     *                                       fill_value=fill_value)
     *
     */
        __pyx_t_3 = PyObject_Call(__pyx_t_9, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3239; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_r = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L0;
      }

     3240:                                       fill_value=fill_value)

        /* "pandas/internals.pyx":3240
     *                 )
     *             return self.reindex_items(new_axis, indexer=indexer, copy=copy,
     *                                       fill_value=fill_value)             # <<<<<<<<<<<<<<
     *
     *         new_axis, indexer = cur_axis.reindex(
     */
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3239; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3241:

     3242:         new_axis, indexer = cur_axis.reindex(

      /* "pandas/internals.pyx":3242
     *                                       fill_value=fill_value)
     *
     *         new_axis, indexer = cur_axis.reindex(             # <<<<<<<<<<<<<<
     *             new_axis, method, copy_if_needed=True)
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_cur_axis, __pyx_n_s_reindex); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":3243
     *
     *         new_axis, indexer = cur_axis.reindex(
     *             new_axis, method, copy_if_needed=True)             # <<<<<<<<<<<<<<
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,
     *                                     fill_value=fill_value)
     */
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_axis);
      __Pyx_GIVEREF(__pyx_v_new_axis);
      __Pyx_INCREF(__pyx_v_method);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_method);
      __Pyx_GIVEREF(__pyx_v_method);

      /* "pandas/internals.pyx":3242
     *                                       fill_value=fill_value)
     *
     *         new_axis, indexer = cur_axis.reindex(             # <<<<<<<<<<<<<<
     *             new_axis, method, copy_if_needed=True)
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,
     */
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);

      /* "pandas/internals.pyx":3242
     *                                       fill_value=fill_value)
     *
     *         new_axis, indexer = cur_axis.reindex(             # <<<<<<<<<<<<<<
     *             new_axis, method, copy_if_needed=True)
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,
     */
      __pyx_t_9 = PyObject_Call(__pyx_t_3, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_9))) || (PyList_CheckExact(__pyx_t_9))) {
        PyObject* sequence = __pyx_t_9;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_2);
        #else
        __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        #endif
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_3 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_10 = Py_TYPE(__pyx_t_3)->tp_iternext;
        index = 0; __pyx_t_1 = __pyx_t_10(__pyx_t_3); if (unlikely(!__pyx_t_1)) goto __pyx_L10_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        index = 1; __pyx_t_2 = __pyx_t_10(__pyx_t_3); if (unlikely(!__pyx_t_2)) goto __pyx_L10_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_10(__pyx_t_3), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_10 = NULL;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L11_unpacking_done;
        __pyx_L10_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_10 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L11_unpacking_done:;
      }
      __Pyx_DECREF_SET(__pyx_v_new_axis, __pyx_t_1);
      __pyx_t_1 = 0;
      __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_2);
      __pyx_t_2 = 0;

     3243:             new_axis, method, copy_if_needed=True)

      /* "pandas/internals.pyx":3243
     *
     *         new_axis, indexer = cur_axis.reindex(
     *             new_axis, method, copy_if_needed=True)             # <<<<<<<<<<<<<<
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,
     *                                     fill_value=fill_value)
     */
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_copy_if_needed, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3242; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3244:         return self.reindex_indexer(new_axis, indexer, axis=axis,

      /* "pandas/internals.pyx":3244
     *         new_axis, indexer = cur_axis.reindex(
     *             new_axis, method, copy_if_needed=True)
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,             # <<<<<<<<<<<<<<
     *                                     fill_value=fill_value)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex_indexer); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_axis);
      __Pyx_GIVEREF(__pyx_v_new_axis);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3244
     *         new_axis, indexer = cur_axis.reindex(
     *             new_axis, method, copy_if_needed=True)
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,             # <<<<<<<<<<<<<<
     *                                     fill_value=fill_value)
     *
     */
      __pyx_t_3 = PyObject_Call(__pyx_t_9, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     3245:                                     fill_value=fill_value)

      /* "pandas/internals.pyx":3245
     *             new_axis, method, copy_if_needed=True)
     *         return self.reindex_indexer(new_axis, indexer, axis=axis,
     *                                     fill_value=fill_value)             # <<<<<<<<<<<<<<
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,
     */
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3246:

     3247:     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,

    /* "pandas/internals.pyx":3247
     *                                     fill_value=fill_value)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         raise AssertionError('method argument not supported for '
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_159reindex_axis0_with_method(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_159reindex_axis0_with_method = {__Pyx_NAMESTR("reindex_axis0_with_method"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_159reindex_axis0_with_method, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_159reindex_axis0_with_method(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      CYTHON_UNUSED PyObject *__pyx_v_self = 0;
      CYTHON_UNUSED PyObject *__pyx_v_new_axis = 0;
      CYTHON_UNUSED PyObject *__pyx_v_indexer = 0;
      CYTHON_UNUSED PyObject *__pyx_v_method = 0;
      CYTHON_UNUSED PyObject *__pyx_v_fill_value = 0;
      CYTHON_UNUSED PyObject *__pyx_v_limit = 0;
      CYTHON_UNUSED PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis0_with_method (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_axis,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_copy,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":3247
     *                                     fill_value=fill_value)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         raise AssertionError('method argument not supported for '
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_158reindex_axis0_with_method(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *__pyx_v_new_axis, CYTHON_UNUSED PyObject *__pyx_v_indexer, CYTHON_UNUSED PyObject *__pyx_v_method, CYTHON_UNUSED PyObject *__pyx_v_fill_value, CYTHON_UNUSED PyObject *__pyx_v_limit, CYTHON_UNUSED PyObject *__pyx_v_copy) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis0_with_method", 0);

      /* "pandas/internals.pyx":3247
     *                                     fill_value=fill_value)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         raise AssertionError('method argument not supported for '
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_axis0_with_method", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3247
     *                                     fill_value=fill_value)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         raise AssertionError('method argument not supported for '
     */
      __pyx_tuple__649 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_new_axis, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_copy); if (unlikely(!__pyx_tuple__649)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__649);
      __Pyx_GIVEREF(__pyx_tuple__649);
      __pyx_codeobj__650 = (PyObject*)__Pyx_PyCode_New(7, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__649, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_axis0_with_method, 3247, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__650)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3247
     *                                     fill_value=fill_value)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         raise AssertionError('method argument not supported for '
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_159reindex_axis0_with_method, 0, __pyx_n_s_BlockManager_reindex_axis0_with, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__650)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__651);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_axis0_with_method, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__651 = PyTuple_Pack(5, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__651)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__651);
      __Pyx_GIVEREF(__pyx_tuple__651);

     3248:                                   fill_value=None, limit=None, copy=True):

        /* "pandas/internals.pyx":3248
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,
     *                                   fill_value=None, limit=None, copy=True):             # <<<<<<<<<<<<<<
     *         raise AssertionError('method argument not supported for '
     *                              'axis == 0')
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_axis0_with_method", 0, 2, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_axis0_with_method") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_axis = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_method = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_limit = values[5];
        __pyx_v_copy = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_axis0_with_method", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3247; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_axis0_with_method", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_158reindex_axis0_with_method(__pyx_self, __pyx_v_self, __pyx_v_new_axis, __pyx_v_indexer, __pyx_v_method, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_copy);

     3249:         raise AssertionError('method argument not supported for '

      /* "pandas/internals.pyx":3249
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,
     *                                   fill_value=None, limit=None, copy=True):
     *         raise AssertionError('method argument not supported for '             # <<<<<<<<<<<<<<
     *                              'axis == 0')
     *
     */
      __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__103, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_Raise(__pyx_t_1, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3249
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,
     *                                   fill_value=None, limit=None, copy=True):
     *         raise AssertionError('method argument not supported for '             # <<<<<<<<<<<<<<
     *                              'axis == 0')
     *
     */
      __pyx_tuple__103 = PyTuple_Pack(1, __pyx_kp_s_method_argument_not_supported_fo); if (unlikely(!__pyx_tuple__103)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3249; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__103);
      __Pyx_GIVEREF(__pyx_tuple__103);

     3250:                              'axis == 0')

     3251:

     3252:     def reindex_indexer(self, new_axis, indexer, axis=1, fill_value=None,

    /* "pandas/internals.pyx":3252
     *                              'axis == 0')
     *
     *     def reindex_indexer(self, new_axis, indexer, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                         allow_dups=False):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_161reindex_indexer(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_160reindex_indexer[] = "\n        pandas-indexer with -1's only.\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_161reindex_indexer = {__Pyx_NAMESTR("reindex_indexer"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_161reindex_indexer, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_160reindex_indexer)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_161reindex_indexer(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_axis = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_allow_dups = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_indexer (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_axis,&__pyx_n_s_indexer,&__pyx_n_s_axis,&__pyx_n_s_fill_value,&__pyx_n_s_allow_dups,0};
        PyObject* values[6] = {0,0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)__pyx_int_1));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":3252
     *                              'axis == 0')
     *
     *     def reindex_indexer(self, new_axis, indexer, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                         allow_dups=False):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_160reindex_indexer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_axis, PyObject *__pyx_v_indexer, PyObject *__pyx_v_axis, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_allow_dups) {
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_newb = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_indexer", 0);
      __Pyx_INCREF(__pyx_v_self);

      /* "pandas/internals.pyx":3252
     *                              'axis == 0')
     *
     *     def reindex_indexer(self, new_axis, indexer, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                         allow_dups=False):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_indexer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_self);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3252
     *                              'axis == 0')
     *
     *     def reindex_indexer(self, new_axis, indexer, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                         allow_dups=False):
     *         """
     */
      __pyx_tuple__652 = PyTuple_Pack(10, __pyx_n_s_self, __pyx_n_s_new_axis, __pyx_n_s_indexer, __pyx_n_s_axis, __pyx_n_s_fill_value, __pyx_n_s_allow_dups, __pyx_n_s_new_blocks, __pyx_n_s_block, __pyx_n_s_newb, __pyx_n_s_new_axes); if (unlikely(!__pyx_tuple__652)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__652);
      __Pyx_GIVEREF(__pyx_tuple__652);
      __pyx_codeobj__653 = (PyObject*)__Pyx_PyCode_New(6, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__652, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_indexer, 3252, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__653)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3252
     *                              'axis == 0')
     *
     *     def reindex_indexer(self, new_axis, indexer, axis=1, fill_value=None,             # <<<<<<<<<<<<<<
     *                         allow_dups=False):
     *         """
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_161reindex_indexer, 0, __pyx_n_s_BlockManager_reindex_indexer, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__653)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__654);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_indexer, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__654 = PyTuple_Pack(3, ((PyObject *)__pyx_int_1), ((PyObject *)Py_None), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__654)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__654);
      __Pyx_GIVEREF(__pyx_tuple__654);

     3253:                         allow_dups=False):

        /* "pandas/internals.pyx":3253
     *
     *     def reindex_indexer(self, new_axis, indexer, axis=1, fill_value=None,
     *                         allow_dups=False):             # <<<<<<<<<<<<<<
     *         """
     *         pandas-indexer with -1's only.
     */
        values[5] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_indexer", 0, 3, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_indexer", 0, 3, 6, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_allow_dups);
              if (value) { values[5] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_indexer") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_axis = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_axis = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_allow_dups = values[5];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_indexer", 0, 3, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3252; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_indexer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_160reindex_indexer(__pyx_self, __pyx_v_self, __pyx_v_new_axis, __pyx_v_indexer, __pyx_v_axis, __pyx_v_fill_value, __pyx_v_allow_dups);

     3254:         """

     3255:         pandas-indexer with -1's only.

     3256:         """

     3257:         # trying to reindex on an axis with duplicates

     3258:         if not allow_dups and not self.axes[axis].is_unique:

      /* "pandas/internals.pyx":3258
     *         """
     *         # trying to reindex on an axis with duplicates
     *         if not allow_dups and not self.axes[axis].is_unique:             # <<<<<<<<<<<<<<
     *             raise ValueError("cannot reindex from a duplicate axis")
     *
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_allow_dups); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3258; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = ((!__pyx_t_1) != 0);
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3258; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyObject_GetItem(__pyx_t_3, __pyx_v_axis); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3258; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3258; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3258; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_5 = ((!__pyx_t_1) != 0);
        __pyx_t_1 = __pyx_t_5;
      } else {
        __pyx_t_1 = __pyx_t_2;
      }
      if (__pyx_t_1) {

     3259:             raise ValueError("cannot reindex from a duplicate axis")

        /* "pandas/internals.pyx":3259
     *         # trying to reindex on an axis with duplicates
     *         if not allow_dups and not self.axes[axis].is_unique:
     *             raise ValueError("cannot reindex from a duplicate axis")             # <<<<<<<<<<<<<<
     *
     *         if not self.is_consolidated():
     */
        __pyx_t_3 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__104, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3259; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_Raise(__pyx_t_3, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3259; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":3259
     *         # trying to reindex on an axis with duplicates
     *         if not allow_dups and not self.axes[axis].is_unique:
     *             raise ValueError("cannot reindex from a duplicate axis")             # <<<<<<<<<<<<<<
     *
     *         if not self.is_consolidated():
     */
      __pyx_tuple__104 = PyTuple_Pack(1, __pyx_kp_s_cannot_reindex_from_a_duplicate); if (unlikely(!__pyx_tuple__104)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3259; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__104);
      __Pyx_GIVEREF(__pyx_tuple__104);

     3260:

     3261:         if not self.is_consolidated():

      /* "pandas/internals.pyx":3261
     *             raise ValueError("cannot reindex from a duplicate axis")
     *
     *         if not self.is_consolidated():             # <<<<<<<<<<<<<<
     *             self = self.consolidate()
     *
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_consolidated_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3261; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_2 = ((!__pyx_t_1) != 0);
      if (__pyx_t_2) {

     3262:             self = self.consolidate()

        /* "pandas/internals.pyx":3262
     *
     *         if not self.is_consolidated():
     *             self = self.consolidate()             # <<<<<<<<<<<<<<
     *
     *         if axis == 0:
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3262; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3262; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF_SET(__pyx_v_self, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     3263:

     3264:         if axis == 0:

      /* "pandas/internals.pyx":3264
     *             self = self.consolidate()
     *
     *         if axis == 0:             # <<<<<<<<<<<<<<
     *             return self._reindex_indexer_items(new_axis, indexer, fill_value)
     *
     */
      __pyx_t_3 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3264; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_2) {

     3265:             return self._reindex_indexer_items(new_axis, indexer, fill_value)

        /* "pandas/internals.pyx":3265
     *
     *         if axis == 0:
     *             return self._reindex_indexer_items(new_axis, indexer, fill_value)             # <<<<<<<<<<<<<<
     *
     *         new_blocks = []
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex_indexer_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_new_axis);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_new_axis);
        __Pyx_GIVEREF(__pyx_v_new_axis);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        __Pyx_INCREF(__pyx_v_fill_value);
        PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_fill_value);
        __Pyx_GIVEREF(__pyx_v_fill_value);
        __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_6;
        __pyx_t_6 = 0;
        goto __pyx_L0;
      }

     3266:

     3267:         new_blocks = []

      /* "pandas/internals.pyx":3267
     *             return self._reindex_indexer_items(new_axis, indexer, fill_value)
     *
     *         new_blocks = []             # <<<<<<<<<<<<<<
     *         for block in self.blocks:
     *             newb = block.reindex_axis(
     */
      __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3267; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_6);
      __pyx_t_6 = 0;

     3268:         for block in self.blocks:

      /* "pandas/internals.pyx":3268
     *
     *         new_blocks = []
     *         for block in self.blocks:             # <<<<<<<<<<<<<<
     *             newb = block.reindex_axis(
     *                 indexer, axis=axis, fill_value=fill_value)
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
        __pyx_t_4 = __pyx_t_6; __Pyx_INCREF(__pyx_t_4); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_7 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_8 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_4, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_7); __Pyx_INCREF(__pyx_t_6); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_6 = PySequence_ITEM(__pyx_t_4, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_6 = __pyx_t_8(__pyx_t_4);
          if (unlikely(!__pyx_t_6)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3268; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_6);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_6);
        __pyx_t_6 = 0;

     3269:             newb = block.reindex_axis(

        /* "pandas/internals.pyx":3269
     *         new_blocks = []
     *         for block in self.blocks:
     *             newb = block.reindex_axis(             # <<<<<<<<<<<<<<
     *                 indexer, axis=axis, fill_value=fill_value)
     *             new_blocks.append(newb)
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_reindex_axis); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);

        /* "pandas/internals.pyx":3270
     *         for block in self.blocks:
     *             newb = block.reindex_axis(
     *                 indexer, axis=axis, fill_value=fill_value)             # <<<<<<<<<<<<<<
     *             new_blocks.append(newb)
     *
     */
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);

        /* "pandas/internals.pyx":3269
     *         new_blocks = []
     *         for block in self.blocks:
     *             newb = block.reindex_axis(             # <<<<<<<<<<<<<<
     *                 indexer, axis=axis, fill_value=fill_value)
     *             new_blocks.append(newb)
     */
        __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);

        /* "pandas/internals.pyx":3269
     *         new_blocks = []
     *         for block in self.blocks:
     *             newb = block.reindex_axis(             # <<<<<<<<<<<<<<
     *                 indexer, axis=axis, fill_value=fill_value)
     *             new_blocks.append(newb)
     */
        __pyx_t_10 = PyObject_Call(__pyx_t_6, __pyx_t_3, __pyx_t_9); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_XDECREF_SET(__pyx_v_newb, __pyx_t_10);
        __pyx_t_10 = 0;

     3270:                 indexer, axis=axis, fill_value=fill_value)

        /* "pandas/internals.pyx":3270
     *         for block in self.blocks:
     *             newb = block.reindex_axis(
     *                 indexer, axis=axis, fill_value=fill_value)             # <<<<<<<<<<<<<<
     *             new_blocks.append(newb)
     *
     */
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3271:             new_blocks.append(newb)

        /* "pandas/internals.pyx":3271
     *             newb = block.reindex_axis(
     *                 indexer, axis=axis, fill_value=fill_value)
     *             new_blocks.append(newb)             # <<<<<<<<<<<<<<
     *
     *         new_axes = list(self.axes)
     */
        __pyx_t_11 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_newb); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3272:

     3273:         new_axes = list(self.axes)

      /* "pandas/internals.pyx":3273
     *             new_blocks.append(newb)
     *
     *         new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *         new_axes[axis] = new_axis
     *         return self.__class__(new_blocks, new_axes)
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3273; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3273; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_10);
      PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_10, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3273; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

     3274:         new_axes[axis] = new_axis

      /* "pandas/internals.pyx":3274
     *
     *         new_axes = list(self.axes)
     *         new_axes[axis] = new_axis             # <<<<<<<<<<<<<<
     *         return self.__class__(new_blocks, new_axes)
     *
     */
      if (unlikely(PyObject_SetItem(__pyx_v_new_axes, __pyx_v_axis, __pyx_v_new_axis) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3274; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3275:         return self.__class__(new_blocks, new_axes)

      /* "pandas/internals.pyx":3275
     *         new_axes = list(self.axes)
     *         new_axes[axis] = new_axis
     *         return self.__class__(new_blocks, new_axes)             # <<<<<<<<<<<<<<
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_10 = PyTuple_New(2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_10);
      __Pyx_INCREF(__pyx_v_new_blocks);
      PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_v_new_blocks);
      __Pyx_GIVEREF(__pyx_v_new_blocks);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_10, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_9 = PyObject_Call(__pyx_t_4, __pyx_t_10, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3275; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
      __pyx_r = __pyx_t_9;
      __pyx_t_9 = 0;
      goto __pyx_L0;

     3276:

     3277:     def _reindex_indexer_items(self, new_items, indexer, fill_value):

    /* "pandas/internals.pyx":3277
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # TODO: less efficient than I'd like
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_163_reindex_indexer_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_163_reindex_indexer_items = {__Pyx_NAMESTR("_reindex_indexer_items"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_163_reindex_indexer_items, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_163_reindex_indexer_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_items = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_reindex_indexer_items (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_items,&__pyx_n_s_indexer,&__pyx_n_s_fill_value,0};
        PyObject* values[4] = {0,0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_reindex_indexer_items") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
          values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        }
        __pyx_v_self = values[0];
        __pyx_v_new_items = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_fill_value = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._reindex_indexer_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_162_reindex_indexer_items(__pyx_self, __pyx_v_self, __pyx_v_new_items, __pyx_v_indexer, __pyx_v_fill_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_162_reindex_indexer_items(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_items, PyObject *__pyx_v_indexer, PyObject *__pyx_v_fill_value) {
      PyObject *__pyx_v_item_order = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_is_unique = NULL;
      PyObject *__pyx_v_rl = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_idx = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_lidx = NULL;
      PyObject *__pyx_v_l = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_blk_indexer = NULL;
      PyObject *__pyx_v_selector = NULL;
      PyObject *__pyx_v_new_block_items = NULL;
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_placement = NULL;
      PyObject *__pyx_v_na_items = NULL;
      PyObject *__pyx_v_na_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_reindex_indexer_items", 0);

      /* "pandas/internals.pyx":3277
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # TODO: less efficient than I'd like
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.BlockManager._reindex_indexer_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_item_order);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_is_unique);
      __Pyx_XDECREF(__pyx_v_rl);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_idx);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_lidx);
      __Pyx_XDECREF(__pyx_v_l);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_blk_indexer);
      __Pyx_XDECREF(__pyx_v_selector);
      __Pyx_XDECREF(__pyx_v_new_block_items);
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_placement);
      __Pyx_XDECREF(__pyx_v_na_items);
      __Pyx_XDECREF(__pyx_v_na_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3277
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # TODO: less efficient than I'd like
     *
     */
      __pyx_tuple__655 = PyTuple_Pack(23, __pyx_n_s_self, __pyx_n_s_new_items, __pyx_n_s_indexer, __pyx_n_s_fill_value, __pyx_n_s_item_order, __pyx_n_s_new_axes, __pyx_n_s_new_blocks, __pyx_n_s_is_unique, __pyx_n_s_rl, __pyx_n_s_i, __pyx_n_s_idx, __pyx_n_s_item, __pyx_n_s_blk, __pyx_n_s_lidx, __pyx_n_s_l, __pyx_n_s_mask, __pyx_n_s_blk_indexer, __pyx_n_s_selector, __pyx_n_s_new_block_items, __pyx_n_s_new_values, __pyx_n_s_placement, __pyx_n_s_na_items, __pyx_n_s_na_block); if (unlikely(!__pyx_tuple__655)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__655);
      __Pyx_GIVEREF(__pyx_tuple__655);

      /* "pandas/internals.pyx":3277
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # TODO: less efficient than I'd like
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_163_reindex_indexer_items, 0, __pyx_n_s_BlockManager__reindex_indexer_it, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__656)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_indexer_items, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__656 = (PyObject*)__Pyx_PyCode_New(4, 0, 23, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__655, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_indexer_items, 3277, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__656)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3278:         # TODO: less efficient than I'd like

     3279:

     3280:         item_order = com.take_1d(self.items.values, indexer)

      /* "pandas/internals.pyx":3280
     *         # TODO: less efficient than I'd like
     *
     *         item_order = com.take_1d(self.items.values, indexer)             # <<<<<<<<<<<<<<
     *         new_axes = [new_items] + self.axes[1:]
     *         new_blocks = []
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_take_1d); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3280; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_item_order = __pyx_t_3;
      __pyx_t_3 = 0;

     3281:         new_axes = [new_items] + self.axes[1:]

      /* "pandas/internals.pyx":3281
     *
     *         item_order = com.take_1d(self.items.values, indexer)
     *         new_axes = [new_items] + self.axes[1:]             # <<<<<<<<<<<<<<
     *         new_blocks = []
     *         is_unique = new_items.is_unique
     */
      __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_items);
      PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_items);
      __Pyx_GIVEREF(__pyx_v_new_items);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_1, 1, 0, NULL, NULL, &__pyx_slice__105, 1, 0, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyNumber_Add(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_new_axes = __pyx_t_1;
      __pyx_t_1 = 0;

      /* "pandas/internals.pyx":3281
     *
     *         item_order = com.take_1d(self.items.values, indexer)
     *         new_axes = [new_items] + self.axes[1:]             # <<<<<<<<<<<<<<
     *         new_blocks = []
     *         is_unique = new_items.is_unique
     */
      __pyx_slice__105 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__105)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3281; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__105);
      __Pyx_GIVEREF(__pyx_slice__105);

     3282:         new_blocks = []

      /* "pandas/internals.pyx":3282
     *         item_order = com.take_1d(self.items.values, indexer)
     *         new_axes = [new_items] + self.axes[1:]
     *         new_blocks = []             # <<<<<<<<<<<<<<
     *         is_unique = new_items.is_unique
     *
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3282; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_new_blocks = __pyx_t_1;
      __pyx_t_1 = 0;

     3283:         is_unique = new_items.is_unique

      /* "pandas/internals.pyx":3283
     *         new_axes = [new_items] + self.axes[1:]
     *         new_blocks = []
     *         is_unique = new_items.is_unique             # <<<<<<<<<<<<<<
     *
     *         # we have duplicates in the items and what we are reindexing
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3283; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_is_unique = __pyx_t_1;
      __pyx_t_1 = 0;

     3284:

     3285:         # we have duplicates in the items and what we are reindexing

     3286:         if not is_unique and not self.items.is_unique:

      /* "pandas/internals.pyx":3286
     *
     *         # we have duplicates in the items and what we are reindexing
     *         if not is_unique and not self.items.is_unique:             # <<<<<<<<<<<<<<
     *
     *             rl = self._set_ref_locs(do_refs='force')
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3286; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3286; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3286; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3286; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_6 = ((!__pyx_t_4) != 0);
        __pyx_t_4 = __pyx_t_6;
      } else {
        __pyx_t_4 = __pyx_t_5;
      }
      if (__pyx_t_4) {

     3287:

     3288:             rl = self._set_ref_locs(do_refs='force')

        /* "pandas/internals.pyx":3288
     *         if not is_unique and not self.items.is_unique:
     *
     *             rl = self._set_ref_locs(do_refs='force')             # <<<<<<<<<<<<<<
     *             for i, idx in enumerate(indexer):
     *                 item = new_items.take([i])
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_do_refs, __pyx_n_s_force) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3288; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_rl = __pyx_t_3;
        __pyx_t_3 = 0;

     3289:             for i, idx in enumerate(indexer):

        /* "pandas/internals.pyx":3289
     *
     *             rl = self._set_ref_locs(do_refs='force')
     *             for i, idx in enumerate(indexer):             # <<<<<<<<<<<<<<
     *                 item = new_items.take([i])
     *                 if idx >= 0:
     */
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_3 = __pyx_int_0;
        if (PyList_CheckExact(__pyx_v_indexer) || PyTuple_CheckExact(__pyx_v_indexer)) {
          __pyx_t_1 = __pyx_v_indexer; __Pyx_INCREF(__pyx_t_1); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_indexer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = Py_TYPE(__pyx_t_1)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_1)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_1)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_7); __Pyx_INCREF(__pyx_t_2); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_2 = __pyx_t_8(__pyx_t_1);
            if (unlikely(!__pyx_t_2)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_2);
          }
          __Pyx_XDECREF_SET(__pyx_v_idx, __pyx_t_2);
          __pyx_t_2 = 0;
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
          __pyx_t_2 = PyNumber_Add(__pyx_t_3, __pyx_int_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3289; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_3);
          __pyx_t_3 = __pyx_t_2;
          __pyx_t_2 = 0;

     3290:                 item = new_items.take([i])

          /* "pandas/internals.pyx":3290
     *             rl = self._set_ref_locs(do_refs='force')
     *             for i, idx in enumerate(indexer):
     *                 item = new_items.take([i])             # <<<<<<<<<<<<<<
     *                 if idx >= 0:
     *                     blk, lidx = rl[idx]
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_items, __pyx_n_s_take); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3290; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_9 = PyList_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3290; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_INCREF(__pyx_v_i);
          PyList_SET_ITEM(__pyx_t_9, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3290; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_9);
          __Pyx_GIVEREF(__pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_9 = PyObject_Call(__pyx_t_2, __pyx_t_10, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3290; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_9);
          __pyx_t_9 = 0;

     3291:                 if idx >= 0:

          /* "pandas/internals.pyx":3291
     *             for i, idx in enumerate(indexer):
     *                 item = new_items.take([i])
     *                 if idx >= 0:             # <<<<<<<<<<<<<<
     *                     blk, lidx = rl[idx]
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     */
          __pyx_t_9 = PyObject_RichCompare(__pyx_v_idx, __pyx_int_0, Py_GE); __Pyx_XGOTREF(__pyx_t_9); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3291; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3291; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (__pyx_t_4) {

     3292:                     blk, lidx = rl[idx]

            /* "pandas/internals.pyx":3292
     *                 item = new_items.take([i])
     *                 if idx >= 0:
     *                     blk, lidx = rl[idx]             # <<<<<<<<<<<<<<
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,
     */
            __pyx_t_9 = PyObject_GetItem(__pyx_v_rl, __pyx_v_idx); if (unlikely(__pyx_t_9 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3292; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_9);
            if ((likely(PyTuple_CheckExact(__pyx_t_9))) || (PyList_CheckExact(__pyx_t_9))) {
              PyObject* sequence = __pyx_t_9;
              #if CYTHON_COMPILING_IN_CPYTHON
              Py_ssize_t size = Py_SIZE(sequence);
              #else
              Py_ssize_t size = PySequence_Size(sequence);
              #endif
              if (unlikely(size != 2)) {
                if (size > 2) __Pyx_RaiseTooManyValuesError(2);
                else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              #if CYTHON_COMPILING_IN_CPYTHON
              if (likely(PyTuple_CheckExact(sequence))) {
                __pyx_t_10 = PyTuple_GET_ITEM(sequence, 0);
                __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
              } else {
                __pyx_t_10 = PyList_GET_ITEM(sequence, 0);
                __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
              }
              __Pyx_INCREF(__pyx_t_10);
              __Pyx_INCREF(__pyx_t_2);
              #else
              __pyx_t_10 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_10);
              __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_2);
              #endif
              __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            } else {
              Py_ssize_t index = -1;
              __pyx_t_11 = PyObject_GetIter(__pyx_t_9); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_11);
              __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
              __pyx_t_12 = Py_TYPE(__pyx_t_11)->tp_iternext;
              index = 0; __pyx_t_10 = __pyx_t_12(__pyx_t_11); if (unlikely(!__pyx_t_10)) goto __pyx_L7_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_10);
              index = 1; __pyx_t_2 = __pyx_t_12(__pyx_t_11); if (unlikely(!__pyx_t_2)) goto __pyx_L7_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_2);
              if (__Pyx_IternextUnpackEndCheck(__pyx_t_12(__pyx_t_11), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_12 = NULL;
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              goto __pyx_L8_unpacking_done;
              __pyx_L7_unpacking_failed:;
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __pyx_t_12 = NULL;
              if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3292; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_L8_unpacking_done:;
            }
            __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_10);
            __pyx_t_10 = 0;
            __Pyx_XDECREF_SET(__pyx_v_lidx, __pyx_t_2);
            __pyx_t_2 = 0;

     3293:                     blk = make_block(_block_shape(blk.iget(lidx)), item,

            /* "pandas/internals.pyx":3293
     *                 if idx >= 0:
     *                     blk, lidx = rl[idx]
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,             # <<<<<<<<<<<<<<
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])
     */
            __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_iget); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_INCREF(__pyx_v_lidx);
            PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_lidx);
            __Pyx_GIVEREF(__pyx_v_lidx);
            __pyx_t_13 = PyObject_Call(__pyx_t_10, __pyx_t_11, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_13);
            __Pyx_GIVEREF(__pyx_t_13);
            __pyx_t_13 = 0;
            __pyx_t_13 = PyObject_Call(__pyx_t_2, __pyx_t_11, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;

            /* "pandas/internals.pyx":3294
     *                     blk, lidx = rl[idx]
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,             # <<<<<<<<<<<<<<
     *                                      placement=[i])
     *
     */
            __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);
            PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_13);
            __Pyx_GIVEREF(__pyx_t_13);
            __Pyx_INCREF(__pyx_v_item);
            PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_item);
            __Pyx_GIVEREF(__pyx_v_item);
            __Pyx_INCREF(__pyx_v_new_items);
            PyTuple_SET_ITEM(__pyx_t_11, 2, __pyx_v_new_items);
            __Pyx_GIVEREF(__pyx_v_new_items);
            __pyx_t_13 = 0;

            /* "pandas/internals.pyx":3293
     *                 if idx >= 0:
     *                     blk, lidx = rl[idx]
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,             # <<<<<<<<<<<<<<
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])
     */
            __pyx_t_13 = PyDict_New(); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_13);

            /* "pandas/internals.pyx":3293
     *                 if idx >= 0:
     *                     blk, lidx = rl[idx]
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,             # <<<<<<<<<<<<<<
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])
     */
            __pyx_t_2 = PyObject_Call(__pyx_t_9, __pyx_t_11, __pyx_t_13); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_DECREF_SET(__pyx_v_blk, __pyx_t_2);
            __pyx_t_2 = 0;
            goto __pyx_L6;
          }
          /*else*/ {

     3294:                                      new_items, ndim=self.ndim, fastpath=True,

            /* "pandas/internals.pyx":3294
     *                     blk, lidx = rl[idx]
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,             # <<<<<<<<<<<<<<
     *                                      placement=[i])
     *
     */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3294; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_ndim, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3295:                                      placement=[i])

            /* "pandas/internals.pyx":3295
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])             # <<<<<<<<<<<<<<
     *
     *                 # a missing value
     */
            __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3295; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_INCREF(__pyx_v_i);
            PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_placement, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3296:

     3297:                 # a missing value

     3298:                 else:

     3299:                     blk = self._make_na_block(item,

            /* "pandas/internals.pyx":3299
     *                 # a missing value
     *                 else:
     *                     blk = self._make_na_block(item,             # <<<<<<<<<<<<<<
     *                                               new_items,
     *                                               placement=[i],
     */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_na_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);

            /* "pandas/internals.pyx":3300
     *                 else:
     *                     blk = self._make_na_block(item,
     *                                               new_items,             # <<<<<<<<<<<<<<
     *                                               placement=[i],
     *                                               fill_value=fill_value)
     */
            __pyx_t_13 = PyTuple_New(2); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_INCREF(__pyx_v_item);
            PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_v_item);
            __Pyx_GIVEREF(__pyx_v_item);
            __Pyx_INCREF(__pyx_v_new_items);
            PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_v_new_items);
            __Pyx_GIVEREF(__pyx_v_new_items);

            /* "pandas/internals.pyx":3299
     *                 # a missing value
     *                 else:
     *                     blk = self._make_na_block(item,             # <<<<<<<<<<<<<<
     *                                               new_items,
     *                                               placement=[i],
     */
            __pyx_t_11 = PyDict_New(); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_11);

            /* "pandas/internals.pyx":3299
     *                 # a missing value
     *                 else:
     *                     blk = self._make_na_block(item,             # <<<<<<<<<<<<<<
     *                                               new_items,
     *                                               placement=[i],
     */
            __pyx_t_9 = PyObject_Call(__pyx_t_2, __pyx_t_13, __pyx_t_11); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
            __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_9);
            __pyx_t_9 = 0;
          }
          __pyx_L6:;

     3300:                                               new_items,

     3301:                                               placement=[i],

            /* "pandas/internals.pyx":3301
     *                     blk = self._make_na_block(item,
     *                                               new_items,
     *                                               placement=[i],             # <<<<<<<<<<<<<<
     *                                               fill_value=fill_value)
     *                 new_blocks.append(blk)
     */
            __pyx_t_9 = PyList_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_INCREF(__pyx_v_i);
            PyList_SET_ITEM(__pyx_t_9, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_placement, __pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

     3302:                                               fill_value=fill_value)

            /* "pandas/internals.pyx":3302
     *                                               new_items,
     *                                               placement=[i],
     *                                               fill_value=fill_value)             # <<<<<<<<<<<<<<
     *                 new_blocks.append(blk)
     *             new_blocks = _consolidate(new_blocks, new_items)
     */
            if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3299; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3303:                 new_blocks.append(blk)

          /* "pandas/internals.pyx":3303
     *                                               placement=[i],
     *                                               fill_value=fill_value)
     *                 new_blocks.append(blk)             # <<<<<<<<<<<<<<
     *             new_blocks = _consolidate(new_blocks, new_items)
     *
     */
          __pyx_t_14 = __Pyx_PyObject_Append(__pyx_v_new_blocks, __pyx_v_blk); if (unlikely(__pyx_t_14 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3303; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3304:             new_blocks = _consolidate(new_blocks, new_items)

        /* "pandas/internals.pyx":3304
     *                                               fill_value=fill_value)
     *                 new_blocks.append(blk)
     *             new_blocks = _consolidate(new_blocks, new_items)             # <<<<<<<<<<<<<<
     *
     *
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_consolidate); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_new_blocks);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new_blocks);
        __Pyx_GIVEREF(__pyx_v_new_blocks);
        __Pyx_INCREF(__pyx_v_new_items);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_new_items);
        __Pyx_GIVEREF(__pyx_v_new_items);
        __pyx_t_9 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3304; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_new_blocks, __pyx_t_9);
        __pyx_t_9 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     3305:

     3306:

     3307:         # keep track of what items aren't found anywhere

     3308:         else:

     3309:             l = np.arange(len(item_order))

        /* "pandas/internals.pyx":3309
     *         # keep track of what items aren't found anywhere
     *         else:
     *             l = np.arange(len(item_order))             # <<<<<<<<<<<<<<
     *             mask = np.zeros(len(item_order), dtype=bool)
     *
     */
        __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_arange); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_7 = PyObject_Length(__pyx_v_item_order); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_9 = PyInt_FromSsize_t(__pyx_t_7); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_9);
        __pyx_t_9 = 0;
        __pyx_t_9 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3309; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_v_l = __pyx_t_9;
        __pyx_t_9 = 0;

     3310:             mask = np.zeros(len(item_order), dtype=bool)

        /* "pandas/internals.pyx":3310
     *         else:
     *             l = np.arange(len(item_order))
     *             mask = np.zeros(len(item_order), dtype=bool)             # <<<<<<<<<<<<<<
     *
     *             for blk in self.blocks:
     */
        __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_9, __pyx_n_s_zeros); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_7 = PyObject_Length(__pyx_v_item_order); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_9 = PyInt_FromSsize_t(__pyx_t_7); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_9);
        __Pyx_GIVEREF(__pyx_t_9);
        __pyx_t_9 = 0;
        __pyx_t_9 = PyDict_New(); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        if (PyDict_SetItem(__pyx_t_9, __pyx_n_s_dtype, ((PyObject*)&PyBool_Type)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_11 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_9); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3310; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_v_mask = __pyx_t_11;
        __pyx_t_11 = 0;

     3311:

     3312:             for blk in self.blocks:

        /* "pandas/internals.pyx":3312
     *             mask = np.zeros(len(item_order), dtype=bool)
     *
     *             for blk in self.blocks:             # <<<<<<<<<<<<<<
     *                 blk_indexer = blk.items.get_indexer(item_order)
     *                 selector = blk_indexer != -1
     */
        __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_11);
        if (PyList_CheckExact(__pyx_t_11) || PyTuple_CheckExact(__pyx_t_11)) {
          __pyx_t_9 = __pyx_t_11; __Pyx_INCREF(__pyx_t_9); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_9 = PyObject_GetIter(__pyx_t_11); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_8 = Py_TYPE(__pyx_t_9)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_9)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_9)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_11 = PyList_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_11); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_11 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_9)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_9)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_11 = PyTuple_GET_ITEM(__pyx_t_9, __pyx_t_7); __Pyx_INCREF(__pyx_t_11); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_11 = PySequence_ITEM(__pyx_t_9, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_11 = __pyx_t_8(__pyx_t_9);
            if (unlikely(!__pyx_t_11)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3312; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_11);
          }
          __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_11);
          __pyx_t_11 = 0;

     3313:                 blk_indexer = blk.items.get_indexer(item_order)

          /* "pandas/internals.pyx":3313
     *
     *             for blk in self.blocks:
     *                 blk_indexer = blk.items.get_indexer(item_order)             # <<<<<<<<<<<<<<
     *                 selector = blk_indexer != -1
     *
     */
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_get_indexer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_item_order);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_item_order);
          __Pyx_GIVEREF(__pyx_v_item_order);
          __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_11, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3313; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF_SET(__pyx_v_blk_indexer, __pyx_t_3);
          __pyx_t_3 = 0;

     3314:                 selector = blk_indexer != -1

          /* "pandas/internals.pyx":3314
     *             for blk in self.blocks:
     *                 blk_indexer = blk.items.get_indexer(item_order)
     *                 selector = blk_indexer != -1             # <<<<<<<<<<<<<<
     *
     *                 # update with observed items
     */
          __pyx_t_3 = PyObject_RichCompare(__pyx_v_blk_indexer, __pyx_int_neg_1, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_XDECREF_SET(__pyx_v_selector, __pyx_t_3);
          __pyx_t_3 = 0;

     3315:

     3316:                 # update with observed items

     3317:                 mask |= selector

          /* "pandas/internals.pyx":3317
     *
     *                 # update with observed items
     *                 mask |= selector             # <<<<<<<<<<<<<<
     *
     *                 if not selector.any():
     */
          __pyx_t_3 = PyNumber_InPlaceOr(__pyx_v_mask, __pyx_v_selector); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3317; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF_SET(__pyx_v_mask, __pyx_t_3);
          __pyx_t_3 = 0;

     3318:

     3319:                 if not selector.any():

          /* "pandas/internals.pyx":3319
     *                 mask |= selector
     *
     *                 if not selector.any():             # <<<<<<<<<<<<<<
     *                     continue
     *
     */
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_selector, __pyx_n_s_any); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_11 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_11); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3319; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_5 = ((!__pyx_t_4) != 0);
          if (__pyx_t_5) {

     3320:                     continue

            /* "pandas/internals.pyx":3320
     *
     *                 if not selector.any():
     *                     continue             # <<<<<<<<<<<<<<
     *
     *                 new_block_items = new_items.take(selector.nonzero()[0])
     */
            goto __pyx_L9_continue;
          }

     3321:

     3322:                 new_block_items = new_items.take(selector.nonzero()[0])

          /* "pandas/internals.pyx":3322
     *                     continue
     *
     *                 new_block_items = new_items.take(selector.nonzero()[0])             # <<<<<<<<<<<<<<
     *                 new_values = com.take_nd(blk.values, blk_indexer[selector], axis=0,
     *                                          allow_fill=False)
     */
          __pyx_t_11 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_items, __pyx_n_s_take); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_selector, __pyx_n_s_nonzero); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3322; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyObject_Call(__pyx_t_11, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_XDECREF_SET(__pyx_v_new_block_items, __pyx_t_3);
          __pyx_t_3 = 0;

     3323:                 new_values = com.take_nd(blk.values, blk_indexer[selector], axis=0,

          /* "pandas/internals.pyx":3323
     *
     *                 new_block_items = new_items.take(selector.nonzero()[0])
     *                 new_values = com.take_nd(blk.values, blk_indexer[selector], axis=0,             # <<<<<<<<<<<<<<
     *                                          allow_fill=False)
     *                 placement = l[selector] if not is_unique else None
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_take_nd); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_values); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_11 = PyObject_GetItem(__pyx_v_blk_indexer, __pyx_v_selector); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_13 = PyTuple_New(2); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_t_11);
          __Pyx_GIVEREF(__pyx_t_11);
          __pyx_t_3 = 0;
          __pyx_t_11 = 0;
          __pyx_t_11 = PyDict_New(); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_axis, __pyx_int_0) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

          /* "pandas/internals.pyx":3323
     *
     *                 new_block_items = new_items.take(selector.nonzero()[0])
     *                 new_values = com.take_nd(blk.values, blk_indexer[selector], axis=0,             # <<<<<<<<<<<<<<
     *                                          allow_fill=False)
     *                 placement = l[selector] if not is_unique else None
     */
          __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_13, __pyx_t_11); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_XDECREF_SET(__pyx_v_new_values, __pyx_t_3);
          __pyx_t_3 = 0;

     3324:                                          allow_fill=False)

          /* "pandas/internals.pyx":3324
     *                 new_block_items = new_items.take(selector.nonzero()[0])
     *                 new_values = com.take_nd(blk.values, blk_indexer[selector], axis=0,
     *                                          allow_fill=False)             # <<<<<<<<<<<<<<
     *                 placement = l[selector] if not is_unique else None
     *                 new_blocks.append(make_block(new_values,
     */
          if (PyDict_SetItem(__pyx_t_11, __pyx_n_s_allow_fill, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3325:                 placement = l[selector] if not is_unique else None

          /* "pandas/internals.pyx":3325
     *                 new_values = com.take_nd(blk.values, blk_indexer[selector], axis=0,
     *                                          allow_fill=False)
     *                 placement = l[selector] if not is_unique else None             # <<<<<<<<<<<<<<
     *                 new_blocks.append(make_block(new_values,
     *                                              new_block_items,
     */
          __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3325; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (((!__pyx_t_5) != 0)) {
            __pyx_t_11 = PyObject_GetItem(__pyx_v_l, __pyx_v_selector); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3325; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_3 = __pyx_t_11;
            __pyx_t_11 = 0;
          } else {
            __Pyx_INCREF(Py_None);
            __pyx_t_3 = Py_None;
          }
          __Pyx_XDECREF_SET(__pyx_v_placement, __pyx_t_3);
          __pyx_t_3 = 0;

     3326:                 new_blocks.append(make_block(new_values,

          /* "pandas/internals.pyx":3326
     *                                          allow_fill=False)
     *                 placement = l[selector] if not is_unique else None
     *                 new_blocks.append(make_block(new_values,             # <<<<<<<<<<<<<<
     *                                              new_block_items,
     *                                          new_items,
     */
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);

          /* "pandas/internals.pyx":3328
     *                 new_blocks.append(make_block(new_values,
     *                                              new_block_items,
     *                                          new_items,             # <<<<<<<<<<<<<<
     *                                              placement=placement,
     *                                              fastpath=True))
     */
          __pyx_t_11 = PyTuple_New(3); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_new_values);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_v_new_values);
          __Pyx_GIVEREF(__pyx_v_new_values);
          __Pyx_INCREF(__pyx_v_new_block_items);
          PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_new_block_items);
          __Pyx_GIVEREF(__pyx_v_new_block_items);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_11, 2, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);

          /* "pandas/internals.pyx":3326
     *                                          allow_fill=False)
     *                 placement = l[selector] if not is_unique else None
     *                 new_blocks.append(make_block(new_values,             # <<<<<<<<<<<<<<
     *                                              new_block_items,
     *                                          new_items,
     */
          __pyx_t_13 = PyDict_New(); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);

          /* "pandas/internals.pyx":3326
     *                                          allow_fill=False)
     *                 placement = l[selector] if not is_unique else None
     *                 new_blocks.append(make_block(new_values,             # <<<<<<<<<<<<<<
     *                                              new_block_items,
     *                                          new_items,
     */
          __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_11, __pyx_t_13); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __pyx_t_14 = __Pyx_PyObject_Append(__pyx_v_new_blocks, __pyx_t_1); if (unlikely(__pyx_t_14 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_L9_continue:;
        }
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;

     3327:                                              new_block_items,

     3328:                                          new_items,

     3329:                                              placement=placement,

          /* "pandas/internals.pyx":3329
     *                                              new_block_items,
     *                                          new_items,
     *                                              placement=placement,             # <<<<<<<<<<<<<<
     *                                              fastpath=True))
     *
     */
          if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3330:                                              fastpath=True))

          /* "pandas/internals.pyx":3330
     *                                          new_items,
     *                                              placement=placement,
     *                                              fastpath=True))             # <<<<<<<<<<<<<<
     *
     *             if not mask.all():
     */
          if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3331:

     3332:             if not mask.all():

        /* "pandas/internals.pyx":3332
     *                                              fastpath=True))
     *
     *             if not mask.all():             # <<<<<<<<<<<<<<
     *                 na_items = new_items[-mask]
     *                 placement = l[-mask] if not is_unique else None
     */
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_mask, __pyx_n_s_all); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3332; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = PyObject_Call(__pyx_t_9, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3332; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3332; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_4 = ((!__pyx_t_5) != 0);
        if (__pyx_t_4) {

     3333:                 na_items = new_items[-mask]

          /* "pandas/internals.pyx":3333
     *
     *             if not mask.all():
     *                 na_items = new_items[-mask]             # <<<<<<<<<<<<<<
     *                 placement = l[-mask] if not is_unique else None
     *                 na_block = self._make_na_block(na_items,
     */
          __pyx_t_1 = PyNumber_Negative(__pyx_v_mask); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3333; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_9 = PyObject_GetItem(__pyx_v_new_items, __pyx_t_1); if (unlikely(__pyx_t_9 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3333; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_na_items = __pyx_t_9;
          __pyx_t_9 = 0;

     3334:                 placement = l[-mask] if not is_unique else None

          /* "pandas/internals.pyx":3334
     *             if not mask.all():
     *                 na_items = new_items[-mask]
     *                 placement = l[-mask] if not is_unique else None             # <<<<<<<<<<<<<<
     *                 na_block = self._make_na_block(na_items,
     *                                                new_items,
     */
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3334; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (((!__pyx_t_4) != 0)) {
            __pyx_t_1 = PyNumber_Negative(__pyx_v_mask); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3334; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_13 = PyObject_GetItem(__pyx_v_l, __pyx_t_1); if (unlikely(__pyx_t_13 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3334; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __pyx_t_9 = __pyx_t_13;
            __pyx_t_13 = 0;
          } else {
            __Pyx_INCREF(Py_None);
            __pyx_t_9 = Py_None;
          }
          __Pyx_XDECREF_SET(__pyx_v_placement, __pyx_t_9);
          __pyx_t_9 = 0;

     3335:                 na_block = self._make_na_block(na_items,

          /* "pandas/internals.pyx":3335
     *                 na_items = new_items[-mask]
     *                 placement = l[-mask] if not is_unique else None
     *                 na_block = self._make_na_block(na_items,             # <<<<<<<<<<<<<<
     *                                                new_items,
     *                                                placement=placement,
     */
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_na_block); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);

          /* "pandas/internals.pyx":3336
     *                 placement = l[-mask] if not is_unique else None
     *                 na_block = self._make_na_block(na_items,
     *                                                new_items,             # <<<<<<<<<<<<<<
     *                                                placement=placement,
     *                                                fill_value=fill_value)
     */
          __pyx_t_13 = PyTuple_New(2); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __Pyx_INCREF(__pyx_v_na_items);
          PyTuple_SET_ITEM(__pyx_t_13, 0, __pyx_v_na_items);
          __Pyx_GIVEREF(__pyx_v_na_items);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_13, 1, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);

          /* "pandas/internals.pyx":3335
     *                 na_items = new_items[-mask]
     *                 placement = l[-mask] if not is_unique else None
     *                 na_block = self._make_na_block(na_items,             # <<<<<<<<<<<<<<
     *                                                new_items,
     *                                                placement=placement,
     */
          __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

          /* "pandas/internals.pyx":3335
     *                 na_items = new_items[-mask]
     *                 placement = l[-mask] if not is_unique else None
     *                 na_block = self._make_na_block(na_items,             # <<<<<<<<<<<<<<
     *                                                new_items,
     *                                                placement=placement,
     */
          __pyx_t_11 = PyObject_Call(__pyx_t_9, __pyx_t_13, __pyx_t_1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_na_block = __pyx_t_11;
          __pyx_t_11 = 0;

     3336:                                                new_items,

     3337:                                                placement=placement,

          /* "pandas/internals.pyx":3337
     *                 na_block = self._make_na_block(na_items,
     *                                                new_items,
     *                                                placement=placement,             # <<<<<<<<<<<<<<
     *                                                fill_value=fill_value)
     *                 new_blocks.append(na_block)
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3338:                                                fill_value=fill_value)

          /* "pandas/internals.pyx":3338
     *                                                new_items,
     *                                                placement=placement,
     *                                                fill_value=fill_value)             # <<<<<<<<<<<<<<
     *                 new_blocks.append(na_block)
     *                 new_blocks = _consolidate(new_blocks, new_items)
     */
          if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3339:                 new_blocks.append(na_block)

          /* "pandas/internals.pyx":3339
     *                                                placement=placement,
     *                                                fill_value=fill_value)
     *                 new_blocks.append(na_block)             # <<<<<<<<<<<<<<
     *                 new_blocks = _consolidate(new_blocks, new_items)
     *
     */
          __pyx_t_14 = __Pyx_PyObject_Append(__pyx_v_new_blocks, __pyx_v_na_block); if (unlikely(__pyx_t_14 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3339; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3340:                 new_blocks = _consolidate(new_blocks, new_items)

          /* "pandas/internals.pyx":3340
     *                                                fill_value=fill_value)
     *                 new_blocks.append(na_block)
     *                 new_blocks = _consolidate(new_blocks, new_items)             # <<<<<<<<<<<<<<
     *
     *         return self.__class__(new_blocks, new_axes)
     */
          __pyx_t_11 = __Pyx_GetModuleGlobalName(__pyx_n_s_consolidate); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_v_new_blocks);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new_blocks);
          __Pyx_GIVEREF(__pyx_v_new_blocks);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);
          __pyx_t_13 = PyObject_Call(__pyx_t_11, __pyx_t_1, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3340; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF_SET(__pyx_v_new_blocks, __pyx_t_13);
          __pyx_t_13 = 0;
          goto __pyx_L12;
        }
        __pyx_L12:;
      }
      __pyx_L3:;

     3341:

     3342:         return self.__class__(new_blocks, new_axes)

      /* "pandas/internals.pyx":3342
     *                 new_blocks = _consolidate(new_blocks, new_items)
     *
     *         return self.__class__(new_blocks, new_axes)             # <<<<<<<<<<<<<<
     *
     *     def reindex_items(self, new_items, indexer=None, copy=True,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_13);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_new_blocks);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new_blocks);
      __Pyx_GIVEREF(__pyx_v_new_blocks);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_11 = PyObject_Call(__pyx_t_13, __pyx_t_1, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3342; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_11);
      __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_11;
      __pyx_t_11 = 0;
      goto __pyx_L0;

     3343:

     3344:     def reindex_items(self, new_items, indexer=None, copy=True,

    /* "pandas/internals.pyx":3344
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def reindex_items(self, new_items, indexer=None, copy=True,             # <<<<<<<<<<<<<<
     *                       fill_value=None):
     *         """
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_165reindex_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_164reindex_items[] = "\n\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_165reindex_items = {__Pyx_NAMESTR("reindex_items"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_165reindex_items, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_164reindex_items)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_165reindex_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_items = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_items (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_items,&__pyx_n_s_indexer,&__pyx_n_s_copy,&__pyx_n_s_fill_value,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_True));

      /* "pandas/internals.pyx":3344
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def reindex_items(self, new_items, indexer=None, copy=True,             # <<<<<<<<<<<<<<
     *                       fill_value=None):
     *         """
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_164reindex_items(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_items, PyObject *__pyx_v_indexer, PyObject *__pyx_v_copy, PyObject *__pyx_v_fill_value) {
      PyObject *__pyx_v_data = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_rl = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_idx = NULL;
      PyObject *__pyx_v_lidx = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_mask = NULL;
      PyObject *__pyx_v_extra_items = NULL;
      PyObject *__pyx_v_na_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_items", 0);
      __Pyx_INCREF(__pyx_v_new_items);
      __Pyx_INCREF(__pyx_v_indexer);

      /* "pandas/internals.pyx":3344
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def reindex_items(self, new_items, indexer=None, copy=True,             # <<<<<<<<<<<<<<
     *                       fill_value=None):
     *         """
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_data);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_rl);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_idx);
      __Pyx_XDECREF(__pyx_v_lidx);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_extra_items);
      __Pyx_XDECREF(__pyx_v_na_block);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3344
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def reindex_items(self, new_items, indexer=None, copy=True,             # <<<<<<<<<<<<<<
     *                       fill_value=None):
     *         """
     */
      __pyx_tuple__657 = PyTuple_Pack(18, __pyx_n_s_self, __pyx_n_s_new_items, __pyx_n_s_indexer, __pyx_n_s_copy, __pyx_n_s_fill_value, __pyx_n_s_data_2, __pyx_n_s_new_axes, __pyx_n_s_new_blocks, __pyx_n_s_blk, __pyx_n_s_block, __pyx_n_s_rl, __pyx_n_s_i, __pyx_n_s_idx, __pyx_n_s_lidx, __pyx_n_s_item, __pyx_n_s_mask, __pyx_n_s_extra_items, __pyx_n_s_na_block); if (unlikely(!__pyx_tuple__657)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__657);
      __Pyx_GIVEREF(__pyx_tuple__657);
      __pyx_codeobj__658 = (PyObject*)__Pyx_PyCode_New(5, 0, 18, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__657, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_items, 3344, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__658)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3344
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def reindex_items(self, new_items, indexer=None, copy=True,             # <<<<<<<<<<<<<<
     *                       fill_value=None):
     *         """
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_165reindex_items, 0, __pyx_n_s_BlockManager_reindex_items, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__658)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__659);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_items, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__659 = PyTuple_Pack(3, ((PyObject *)Py_None), ((PyObject *)Py_True), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__659)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__659);
      __Pyx_GIVEREF(__pyx_tuple__659);

     3345:                       fill_value=None):

        /* "pandas/internals.pyx":3345
     *
     *     def reindex_items(self, new_items, indexer=None, copy=True,
     *                       fill_value=None):             # <<<<<<<<<<<<<<
     *         """
     *
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_items", 0, 2, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_items") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_items = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_copy = values[3];
        __pyx_v_fill_value = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_items", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3344; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.reindex_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_164reindex_items(__pyx_self, __pyx_v_self, __pyx_v_new_items, __pyx_v_indexer, __pyx_v_copy, __pyx_v_fill_value);

     3346:         """

     3347:

     3348:         """

     3349:         new_items = _ensure_index(new_items)

      /* "pandas/internals.pyx":3349
     *
     *         """
     *         new_items = _ensure_index(new_items)             # <<<<<<<<<<<<<<
     *         data = self
     *         if not data.is_consolidated():
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3349; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3349; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_items);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_items);
      __Pyx_GIVEREF(__pyx_v_new_items);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3349; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_new_items, __pyx_t_3);
      __pyx_t_3 = 0;

     3350:         data = self

      /* "pandas/internals.pyx":3350
     *         """
     *         new_items = _ensure_index(new_items)
     *         data = self             # <<<<<<<<<<<<<<
     *         if not data.is_consolidated():
     *             data = data.consolidate()
     */
      __Pyx_INCREF(__pyx_v_self);
      __pyx_v_data = __pyx_v_self;

     3351:         if not data.is_consolidated():

      /* "pandas/internals.pyx":3351
     *         new_items = _ensure_index(new_items)
     *         data = self
     *         if not data.is_consolidated():             # <<<<<<<<<<<<<<
     *             data = data.consolidate()
     *             return data.reindex_items(new_items, copy=copy,
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_is_consolidated_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {

     3352:             data = data.consolidate()

        /* "pandas/internals.pyx":3352
     *         data = self
     *         if not data.is_consolidated():
     *             data = data.consolidate()             # <<<<<<<<<<<<<<
     *             return data.reindex_items(new_items, copy=copy,
     *                                       fill_value=fill_value)
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_consolidate_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF_SET(__pyx_v_data, __pyx_t_3);
        __pyx_t_3 = 0;

     3353:             return data.reindex_items(new_items, copy=copy,

        /* "pandas/internals.pyx":3353
     *         if not data.is_consolidated():
     *             data = data.consolidate()
     *             return data.reindex_items(new_items, copy=copy,             # <<<<<<<<<<<<<<
     *                                       fill_value=fill_value)
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_data, __pyx_n_s_reindex_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_new_items);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_items);
        __Pyx_GIVEREF(__pyx_v_new_items);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":3353
     *         if not data.is_consolidated():
     *             data = data.consolidate()
     *             return data.reindex_items(new_items, copy=copy,             # <<<<<<<<<<<<<<
     *                                       fill_value=fill_value)
     *
     */
        __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_r = __pyx_t_6;
        __pyx_t_6 = 0;
        goto __pyx_L0;
      }

     3354:                                       fill_value=fill_value)

        /* "pandas/internals.pyx":3354
     *             data = data.consolidate()
     *             return data.reindex_items(new_items, copy=copy,
     *                                       fill_value=fill_value)             # <<<<<<<<<<<<<<
     *
     *         if indexer is None:
     */
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3355:

     3356:         if indexer is None:

      /* "pandas/internals.pyx":3356
     *                                       fill_value=fill_value)
     *
     *         if indexer is None:             # <<<<<<<<<<<<<<
     *             new_items, indexer = self.items.reindex(new_items,
     *                                                     copy_if_needed=True)
     */
      __pyx_t_5 = (__pyx_v_indexer == Py_None);
      __pyx_t_4 = (__pyx_t_5 != 0);
      if (__pyx_t_4) {

     3357:             new_items, indexer = self.items.reindex(new_items,

        /* "pandas/internals.pyx":3357
     *
     *         if indexer is None:
     *             new_items, indexer = self.items.reindex(new_items,             # <<<<<<<<<<<<<<
     *                                                     copy_if_needed=True)
     *         new_axes = [new_items] + self.axes[1:]
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_reindex); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_new_items);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_new_items);
        __Pyx_GIVEREF(__pyx_v_new_items);
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

        /* "pandas/internals.pyx":3357
     *
     *         if indexer is None:
     *             new_items, indexer = self.items.reindex(new_items,             # <<<<<<<<<<<<<<
     *                                                     copy_if_needed=True)
     *         new_axes = [new_items] + self.axes[1:]
     */
        __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_6, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
          PyObject* sequence = __pyx_t_3;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_6);
          #else
          __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          #endif
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_1 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_7 = Py_TYPE(__pyx_t_1)->tp_iternext;
          index = 0; __pyx_t_2 = __pyx_t_7(__pyx_t_1); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          index = 1; __pyx_t_6 = __pyx_t_7(__pyx_t_1); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_6);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_1), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_7 = NULL;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L6_unpacking_done;
          __pyx_L5_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_t_7 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L6_unpacking_done:;
        }
        __Pyx_DECREF_SET(__pyx_v_new_items, __pyx_t_2);
        __pyx_t_2 = 0;
        __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_6);
        __pyx_t_6 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     3358:                                                     copy_if_needed=True)

        /* "pandas/internals.pyx":3358
     *         if indexer is None:
     *             new_items, indexer = self.items.reindex(new_items,
     *                                                     copy_if_needed=True)             # <<<<<<<<<<<<<<
     *         new_axes = [new_items] + self.axes[1:]
     *
     */
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_copy_if_needed, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3359:         new_axes = [new_items] + self.axes[1:]

      /* "pandas/internals.pyx":3359
     *             new_items, indexer = self.items.reindex(new_items,
     *                                                     copy_if_needed=True)
     *         new_axes = [new_items] + self.axes[1:]             # <<<<<<<<<<<<<<
     *
     *         # could have so me pathological (MultiIndex) issues here
     */
      __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_items);
      PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_items);
      __Pyx_GIVEREF(__pyx_v_new_items);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_t_6, 1, 0, NULL, NULL, &__pyx_slice__106, 1, 0, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyNumber_Add(__pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_new_axes = __pyx_t_6;
      __pyx_t_6 = 0;

      /* "pandas/internals.pyx":3359
     *             new_items, indexer = self.items.reindex(new_items,
     *                                                     copy_if_needed=True)
     *         new_axes = [new_items] + self.axes[1:]             # <<<<<<<<<<<<<<
     *
     *         # could have so me pathological (MultiIndex) issues here
     */
      __pyx_slice__106 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__106)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__106);
      __Pyx_GIVEREF(__pyx_slice__106);

     3360:

     3361:         # could have so me pathological (MultiIndex) issues here

     3362:         new_blocks = []

      /* "pandas/internals.pyx":3362
     *
     *         # could have so me pathological (MultiIndex) issues here
     *         new_blocks = []             # <<<<<<<<<<<<<<
     *         if indexer is None:
     *             for blk in self.blocks:
     */
      __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3362; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_v_new_blocks = __pyx_t_6;
      __pyx_t_6 = 0;

     3363:         if indexer is None:

      /* "pandas/internals.pyx":3363
     *         # could have so me pathological (MultiIndex) issues here
     *         new_blocks = []
     *         if indexer is None:             # <<<<<<<<<<<<<<
     *             for blk in self.blocks:
     *                 if copy:
     */
      __pyx_t_4 = (__pyx_v_indexer == Py_None);
      __pyx_t_5 = (__pyx_t_4 != 0);
      if (__pyx_t_5) {

     3364:             for blk in self.blocks:

        /* "pandas/internals.pyx":3364
     *         new_blocks = []
     *         if indexer is None:
     *             for blk in self.blocks:             # <<<<<<<<<<<<<<
     *                 if copy:
     *                     blk = blk.reindex_items_from(new_items)
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
          __pyx_t_2 = __pyx_t_6; __Pyx_INCREF(__pyx_t_2); __pyx_t_8 = 0;
          __pyx_t_9 = NULL;
        } else {
          __pyx_t_8 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_9 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        for (;;) {
          if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_8); __Pyx_INCREF(__pyx_t_6); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_2, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_8); __Pyx_INCREF(__pyx_t_6); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_2, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_6 = __pyx_t_9(__pyx_t_2);
            if (unlikely(!__pyx_t_6)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3364; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_6);
          }
          __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_6);
          __pyx_t_6 = 0;

     3365:                 if copy:

          /* "pandas/internals.pyx":3365
     *         if indexer is None:
     *             for blk in self.blocks:
     *                 if copy:             # <<<<<<<<<<<<<<
     *                     blk = blk.reindex_items_from(new_items)
     *                 else:
     */
          __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3365; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (__pyx_t_5) {

     3366:                     blk = blk.reindex_items_from(new_items)

            /* "pandas/internals.pyx":3366
     *             for blk in self.blocks:
     *                 if copy:
     *                     blk = blk.reindex_items_from(new_items)             # <<<<<<<<<<<<<<
     *                 else:
     *                     blk.ref_items = new_items
     */
            __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_reindex_items_from); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_INCREF(__pyx_v_new_items);
            PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_items);
            __Pyx_GIVEREF(__pyx_v_new_items);
            __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF_SET(__pyx_v_blk, __pyx_t_1);
            __pyx_t_1 = 0;
            goto __pyx_L10;
          }
          /*else*/ {

     3367:                 else:

     3368:                     blk.ref_items = new_items

            /* "pandas/internals.pyx":3368
     *                     blk = blk.reindex_items_from(new_items)
     *                 else:
     *                     blk.ref_items = new_items             # <<<<<<<<<<<<<<
     *                 new_blocks.extend(_valid_blocks(blk))
     *         else:
     */
            if (__Pyx_PyObject_SetAttrStr(__pyx_v_blk, __pyx_n_s_ref_items, __pyx_v_new_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          __pyx_L10:;

     3369:                 new_blocks.extend(_valid_blocks(blk))

          /* "pandas/internals.pyx":3369
     *                 else:
     *                     blk.ref_items = new_items
     *                 new_blocks.extend(_valid_blocks(blk))             # <<<<<<<<<<<<<<
     *         else:
     *
     */
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_blocks, __pyx_n_s_extend); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_valid_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_blk);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_blk);
          __Pyx_GIVEREF(__pyx_v_blk);
          __pyx_t_10 = PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __pyx_t_10 = 0;
          __pyx_t_10 = PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3369; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        goto __pyx_L7;
      }
      /*else*/ {

     3370:         else:

     3371:

     3372:             # unique

     3373:             if self.axes[0].is_unique and new_items.is_unique:

        /* "pandas/internals.pyx":3373
     *
     *             # unique
     *             if self.axes[0].is_unique and new_items.is_unique:             # <<<<<<<<<<<<<<
     *
     *                 for block in self.blocks:
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3373; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_10 = __Pyx_GetItemInt(__pyx_t_2, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3373; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3373; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3373; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (__pyx_t_5) {
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3373; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3373; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_11 = __pyx_t_4;
        } else {
          __pyx_t_11 = __pyx_t_5;
        }
        if (__pyx_t_11) {

     3374:

     3375:                 for block in self.blocks:

          /* "pandas/internals.pyx":3375
     *             if self.axes[0].is_unique and new_items.is_unique:
     *
     *                 for block in self.blocks:             # <<<<<<<<<<<<<<
     *                     blk = block.reindex_items_from(new_items, copy=copy)
     *                     new_blocks.extend(_valid_blocks(blk))
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
            __pyx_t_10 = __pyx_t_2; __Pyx_INCREF(__pyx_t_10); __pyx_t_8 = 0;
            __pyx_t_9 = NULL;
          } else {
            __pyx_t_8 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_9 = Py_TYPE(__pyx_t_10)->tp_iternext;
          }
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          for (;;) {
            if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_10)) {
              if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_10)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_2 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_8); __Pyx_INCREF(__pyx_t_2); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_2 = PySequence_ITEM(__pyx_t_10, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_10)) {
              if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_10)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_8); __Pyx_INCREF(__pyx_t_2); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_2 = PySequence_ITEM(__pyx_t_10, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_2 = __pyx_t_9(__pyx_t_10);
              if (unlikely(!__pyx_t_2)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3375; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_2);
            }
            __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_2);
            __pyx_t_2 = 0;

     3376:                     blk = block.reindex_items_from(new_items, copy=copy)

            /* "pandas/internals.pyx":3376
     *
     *                 for block in self.blocks:
     *                     blk = block.reindex_items_from(new_items, copy=copy)             # <<<<<<<<<<<<<<
     *                     new_blocks.extend(_valid_blocks(blk))
     *
     */
            __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_reindex_items_from); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_INCREF(__pyx_v_new_items);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_new_items);
            __Pyx_GIVEREF(__pyx_v_new_items);
            __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_3);
            __pyx_t_3 = 0;

     3377:                     new_blocks.extend(_valid_blocks(blk))

            /* "pandas/internals.pyx":3377
     *                 for block in self.blocks:
     *                     blk = block.reindex_items_from(new_items, copy=copy)
     *                     new_blocks.extend(_valid_blocks(blk))             # <<<<<<<<<<<<<<
     *
     *             # non-unique
     */
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_blocks, __pyx_n_s_extend); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_valid_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_INCREF(__pyx_v_blk);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_blk);
            __Pyx_GIVEREF(__pyx_v_blk);
            __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2);
            __Pyx_GIVEREF(__pyx_t_2);
            __pyx_t_2 = 0;
            __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          }
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L11;
        }
        /*else*/ {

     3378:

     3379:             # non-unique

     3380:             else:

     3381:                 rl = self._set_ref_locs(do_refs='force')

          /* "pandas/internals.pyx":3381
     *             # non-unique
     *             else:
     *                 rl = self._set_ref_locs(do_refs='force')             # <<<<<<<<<<<<<<
     *                 for i, idx in enumerate(indexer):
     *                     blk, lidx = rl[idx]
     */
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_ref_locs_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_do_refs, __pyx_n_s_force) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_6 = PyObject_Call(__pyx_t_10, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_v_rl = __pyx_t_6;
          __pyx_t_6 = 0;

     3382:                 for i, idx in enumerate(indexer):

          /* "pandas/internals.pyx":3382
     *             else:
     *                 rl = self._set_ref_locs(do_refs='force')
     *                 for i, idx in enumerate(indexer):             # <<<<<<<<<<<<<<
     *                     blk, lidx = rl[idx]
     *                     item = new_items.take([i])
     */
          __Pyx_INCREF(__pyx_int_0);
          __pyx_t_6 = __pyx_int_0;
          if (PyList_CheckExact(__pyx_v_indexer) || PyTuple_CheckExact(__pyx_v_indexer)) {
            __pyx_t_2 = __pyx_v_indexer; __Pyx_INCREF(__pyx_t_2); __pyx_t_8 = 0;
            __pyx_t_9 = NULL;
          } else {
            __pyx_t_8 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_indexer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_9 = Py_TYPE(__pyx_t_2)->tp_iternext;
          }
          for (;;) {
            if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_2)) {
              if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_2)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_10 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_8); __Pyx_INCREF(__pyx_t_10); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_10 = PySequence_ITEM(__pyx_t_2, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_2)) {
              if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_10 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_8); __Pyx_INCREF(__pyx_t_10); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_10 = PySequence_ITEM(__pyx_t_2, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_10 = __pyx_t_9(__pyx_t_2);
              if (unlikely(!__pyx_t_10)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_10);
            }
            __Pyx_XDECREF_SET(__pyx_v_idx, __pyx_t_10);
            __pyx_t_10 = 0;
            __Pyx_INCREF(__pyx_t_6);
            __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_6);
            __pyx_t_10 = PyNumber_Add(__pyx_t_6, __pyx_int_1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_6);
            __pyx_t_6 = __pyx_t_10;
            __pyx_t_10 = 0;

     3383:                     blk, lidx = rl[idx]

            /* "pandas/internals.pyx":3383
     *                 rl = self._set_ref_locs(do_refs='force')
     *                 for i, idx in enumerate(indexer):
     *                     blk, lidx = rl[idx]             # <<<<<<<<<<<<<<
     *                     item = new_items.take([i])
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     */
            __pyx_t_10 = PyObject_GetItem(__pyx_v_rl, __pyx_v_idx); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3383; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
            __Pyx_GOTREF(__pyx_t_10);
            if ((likely(PyTuple_CheckExact(__pyx_t_10))) || (PyList_CheckExact(__pyx_t_10))) {
              PyObject* sequence = __pyx_t_10;
              #if CYTHON_COMPILING_IN_CPYTHON
              Py_ssize_t size = Py_SIZE(sequence);
              #else
              Py_ssize_t size = PySequence_Size(sequence);
              #endif
              if (unlikely(size != 2)) {
                if (size > 2) __Pyx_RaiseTooManyValuesError(2);
                else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
                {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              #if CYTHON_COMPILING_IN_CPYTHON
              if (likely(PyTuple_CheckExact(sequence))) {
                __pyx_t_3 = PyTuple_GET_ITEM(sequence, 0);
                __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
              } else {
                __pyx_t_3 = PyList_GET_ITEM(sequence, 0);
                __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
              }
              __Pyx_INCREF(__pyx_t_3);
              __Pyx_INCREF(__pyx_t_1);
              #else
              __pyx_t_3 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_3);
              __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_1);
              #endif
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            } else {
              Py_ssize_t index = -1;
              __pyx_t_12 = PyObject_GetIter(__pyx_t_10); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_12);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              __pyx_t_7 = Py_TYPE(__pyx_t_12)->tp_iternext;
              index = 0; __pyx_t_3 = __pyx_t_7(__pyx_t_12); if (unlikely(!__pyx_t_3)) goto __pyx_L16_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_3);
              index = 1; __pyx_t_1 = __pyx_t_7(__pyx_t_12); if (unlikely(!__pyx_t_1)) goto __pyx_L16_unpacking_failed;
              __Pyx_GOTREF(__pyx_t_1);
              if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_12), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_7 = NULL;
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              goto __pyx_L17_unpacking_done;
              __pyx_L16_unpacking_failed:;
              __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
              __pyx_t_7 = NULL;
              if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_L17_unpacking_done:;
            }
            __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_3);
            __pyx_t_3 = 0;
            __Pyx_XDECREF_SET(__pyx_v_lidx, __pyx_t_1);
            __pyx_t_1 = 0;

     3384:                     item = new_items.take([i])

            /* "pandas/internals.pyx":3384
     *                 for i, idx in enumerate(indexer):
     *                     blk, lidx = rl[idx]
     *                     item = new_items.take([i])             # <<<<<<<<<<<<<<
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,
     */
            __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_items, __pyx_n_s_take); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3384; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3384; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_INCREF(__pyx_v_i);
            PyList_SET_ITEM(__pyx_t_1, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3384; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
            __Pyx_GIVEREF(__pyx_t_1);
            __pyx_t_1 = 0;
            __pyx_t_1 = PyObject_Call(__pyx_t_10, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3384; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_1);
            __pyx_t_1 = 0;

     3385:                     blk = make_block(_block_shape(blk.iget(lidx)), item,

            /* "pandas/internals.pyx":3385
     *                     blk, lidx = rl[idx]
     *                     item = new_items.take([i])
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,             # <<<<<<<<<<<<<<
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])
     */
            __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_block_shape); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_iget); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            __Pyx_INCREF(__pyx_v_lidx);
            PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_v_lidx);
            __Pyx_GIVEREF(__pyx_v_lidx);
            __pyx_t_13 = PyObject_Call(__pyx_t_10, __pyx_t_12, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __pyx_t_12 = PyTuple_New(1); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_13);
            __Pyx_GIVEREF(__pyx_t_13);
            __pyx_t_13 = 0;
            __pyx_t_13 = PyObject_Call(__pyx_t_3, __pyx_t_12, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_13);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;

            /* "pandas/internals.pyx":3386
     *                     item = new_items.take([i])
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,             # <<<<<<<<<<<<<<
     *                                      placement=[i])
     *                     new_blocks.append(blk)
     */
            __pyx_t_12 = PyTuple_New(3); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_12);
            PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_13);
            __Pyx_GIVEREF(__pyx_t_13);
            __Pyx_INCREF(__pyx_v_item);
            PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_v_item);
            __Pyx_GIVEREF(__pyx_v_item);
            __Pyx_INCREF(__pyx_v_new_items);
            PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_v_new_items);
            __Pyx_GIVEREF(__pyx_v_new_items);
            __pyx_t_13 = 0;

            /* "pandas/internals.pyx":3385
     *                     blk, lidx = rl[idx]
     *                     item = new_items.take([i])
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,             # <<<<<<<<<<<<<<
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])
     */
            __pyx_t_13 = PyDict_New(); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_13);

            /* "pandas/internals.pyx":3385
     *                     blk, lidx = rl[idx]
     *                     item = new_items.take([i])
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,             # <<<<<<<<<<<<<<
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])
     */
            __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_12, __pyx_t_13); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
            __Pyx_DECREF_SET(__pyx_v_blk, __pyx_t_3);
            __pyx_t_3 = 0;

     3386:                                      new_items, ndim=self.ndim, fastpath=True,

            /* "pandas/internals.pyx":3386
     *                     item = new_items.take([i])
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,             # <<<<<<<<<<<<<<
     *                                      placement=[i])
     *                     new_blocks.append(blk)
     */
            __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_ndim, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3387:                                      placement=[i])

            /* "pandas/internals.pyx":3387
     *                     blk = make_block(_block_shape(blk.iget(lidx)), item,
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])             # <<<<<<<<<<<<<<
     *                     new_blocks.append(blk)
     *
     */
            __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_INCREF(__pyx_v_i);
            PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            if (PyDict_SetItem(__pyx_t_13, __pyx_n_s_placement, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3388:                     new_blocks.append(blk)

            /* "pandas/internals.pyx":3388
     *                                      new_items, ndim=self.ndim, fastpath=True,
     *                                      placement=[i])
     *                     new_blocks.append(blk)             # <<<<<<<<<<<<<<
     *
     *             # add a na block if we are missing items
     */
            __pyx_t_14 = __Pyx_PyObject_Append(__pyx_v_new_blocks, __pyx_v_blk); if (unlikely(__pyx_t_14 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3388; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        }
        __pyx_L11:;

     3389:

     3390:             # add a na block if we are missing items

     3391:             mask = indexer == -1

        /* "pandas/internals.pyx":3391
     *
     *             # add a na block if we are missing items
     *             mask = indexer == -1             # <<<<<<<<<<<<<<
     *             if mask.any():
     *                 extra_items = new_items[mask]
     */
        __pyx_t_6 = PyObject_RichCompare(__pyx_v_indexer, __pyx_int_neg_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3391; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_v_mask = __pyx_t_6;
        __pyx_t_6 = 0;

     3392:             if mask.any():

        /* "pandas/internals.pyx":3392
     *             # add a na block if we are missing items
     *             mask = indexer == -1
     *             if mask.any():             # <<<<<<<<<<<<<<
     *                 extra_items = new_items[mask]
     *                 na_block = self._make_na_block(extra_items, new_items,
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_mask, __pyx_n_s_any); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3392; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_2 = PyObject_Call(__pyx_t_6, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3392; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_11 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3392; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        if (__pyx_t_11) {

     3393:                 extra_items = new_items[mask]

          /* "pandas/internals.pyx":3393
     *             mask = indexer == -1
     *             if mask.any():
     *                 extra_items = new_items[mask]             # <<<<<<<<<<<<<<
     *                 na_block = self._make_na_block(extra_items, new_items,
     *                                                fill_value=fill_value)
     */
          __pyx_t_2 = PyObject_GetItem(__pyx_v_new_items, __pyx_v_mask); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3393; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_v_extra_items = __pyx_t_2;
          __pyx_t_2 = 0;

     3394:                 na_block = self._make_na_block(extra_items, new_items,

          /* "pandas/internals.pyx":3394
     *             if mask.any():
     *                 extra_items = new_items[mask]
     *                 na_block = self._make_na_block(extra_items, new_items,             # <<<<<<<<<<<<<<
     *                                                fill_value=fill_value)
     *                 new_blocks.append(na_block)
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_make_na_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_extra_items);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_extra_items);
          __Pyx_GIVEREF(__pyx_v_extra_items);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);

          /* "pandas/internals.pyx":3394
     *             if mask.any():
     *                 extra_items = new_items[mask]
     *                 na_block = self._make_na_block(extra_items, new_items,             # <<<<<<<<<<<<<<
     *                                                fill_value=fill_value)
     *                 new_blocks.append(na_block)
     */
          __pyx_t_13 = PyObject_Call(__pyx_t_2, __pyx_t_6, __pyx_t_3); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_v_na_block = __pyx_t_13;
          __pyx_t_13 = 0;

     3395:                                                fill_value=fill_value)

          /* "pandas/internals.pyx":3395
     *                 extra_items = new_items[mask]
     *                 na_block = self._make_na_block(extra_items, new_items,
     *                                                fill_value=fill_value)             # <<<<<<<<<<<<<<
     *                 new_blocks.append(na_block)
     *                 new_blocks = _consolidate(new_blocks, new_items)
     */
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3396:                 new_blocks.append(na_block)

          /* "pandas/internals.pyx":3396
     *                 na_block = self._make_na_block(extra_items, new_items,
     *                                                fill_value=fill_value)
     *                 new_blocks.append(na_block)             # <<<<<<<<<<<<<<
     *                 new_blocks = _consolidate(new_blocks, new_items)
     *
     */
          __pyx_t_14 = __Pyx_PyObject_Append(__pyx_v_new_blocks, __pyx_v_na_block); if (unlikely(__pyx_t_14 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3396; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3397:                 new_blocks = _consolidate(new_blocks, new_items)

          /* "pandas/internals.pyx":3397
     *                                                fill_value=fill_value)
     *                 new_blocks.append(na_block)
     *                 new_blocks = _consolidate(new_blocks, new_items)             # <<<<<<<<<<<<<<
     *
     *         return self.__class__(new_blocks, new_axes)
     */
          __pyx_t_13 = __Pyx_GetModuleGlobalName(__pyx_n_s_consolidate); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3397; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3397; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_v_new_blocks);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_blocks);
          __Pyx_GIVEREF(__pyx_v_new_blocks);
          __Pyx_INCREF(__pyx_v_new_items);
          PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_new_items);
          __Pyx_GIVEREF(__pyx_v_new_items);
          __pyx_t_6 = PyObject_Call(__pyx_t_13, __pyx_t_3, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3397; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_new_blocks, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L18;
        }
        __pyx_L18:;
      }
      __pyx_L7:;

     3398:

     3399:         return self.__class__(new_blocks, new_axes)

      /* "pandas/internals.pyx":3399
     *                 new_blocks = _consolidate(new_blocks, new_items)
     *
     *         return self.__class__(new_blocks, new_axes)             # <<<<<<<<<<<<<<
     *
     *     def _make_na_block(self, items, ref_items, placement=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_new_blocks);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_blocks);
      __Pyx_GIVEREF(__pyx_v_new_blocks);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_13 = PyObject_Call(__pyx_t_6, __pyx_t_3, NULL); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3399; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_13);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_13;
      __pyx_t_13 = 0;
      goto __pyx_L0;

     3400:

     3401:     def _make_na_block(self, items, ref_items, placement=None,

    /* "pandas/internals.pyx":3401
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _make_na_block(self, items, ref_items, placement=None,             # <<<<<<<<<<<<<<
     *                        fill_value=None):
     *         # TODO: infer dtypes other than float64 from fill_value
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_167_make_na_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_167_make_na_block = {__Pyx_NAMESTR("_make_na_block"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_167_make_na_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_167_make_na_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_placement = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_make_na_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_items,&__pyx_n_s_ref_items,&__pyx_n_s_placement,&__pyx_n_s_fill_value,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":3401
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _make_na_block(self, items, ref_items, placement=None,             # <<<<<<<<<<<<<<
     *                        fill_value=None):
     *         # TODO: infer dtypes other than float64 from fill_value
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_166_make_na_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_items, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_placement, PyObject *__pyx_v_fill_value) {
      PyObject *__pyx_v_block_shape = NULL;
      PyObject *__pyx_v_dtype = NULL;
      PyObject *__pyx_v_block_values = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_make_na_block", 0);
      __Pyx_INCREF(__pyx_v_fill_value);

      /* "pandas/internals.pyx":3401
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _make_na_block(self, items, ref_items, placement=None,             # <<<<<<<<<<<<<<
     *                        fill_value=None):
     *         # TODO: infer dtypes other than float64 from fill_value
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager._make_na_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_block_shape);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_block_values);
      __Pyx_XDECREF(__pyx_v_fill_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3401
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _make_na_block(self, items, ref_items, placement=None,             # <<<<<<<<<<<<<<
     *                        fill_value=None):
     *         # TODO: infer dtypes other than float64 from fill_value
     */
      __pyx_tuple__660 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_items, __pyx_n_s_ref_items, __pyx_n_s_placement, __pyx_n_s_fill_value, __pyx_n_s_block_shape_2, __pyx_n_s_dtype, __pyx_n_s_block_values); if (unlikely(!__pyx_tuple__660)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__660);
      __Pyx_GIVEREF(__pyx_tuple__660);
      __pyx_codeobj__661 = (PyObject*)__Pyx_PyCode_New(5, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__660, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_make_na_block, 3401, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__661)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3401
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def _make_na_block(self, items, ref_items, placement=None,             # <<<<<<<<<<<<<<
     *                        fill_value=None):
     *         # TODO: infer dtypes other than float64 from fill_value
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_167_make_na_block, 0, __pyx_n_s_BlockManager__make_na_block, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__661)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__662);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_make_na_block, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__662 = PyTuple_Pack(2, ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__662)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__662);
      __Pyx_GIVEREF(__pyx_tuple__662);

     3402:                        fill_value=None):

        /* "pandas/internals.pyx":3402
     *
     *     def _make_na_block(self, items, ref_items, placement=None,
     *                        fill_value=None):             # <<<<<<<<<<<<<<
     *         # TODO: infer dtypes other than float64 from fill_value
     *
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_make_na_block", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_make_na_block", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_placement);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_make_na_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_items = values[1];
        __pyx_v_ref_items = values[2];
        __pyx_v_placement = values[3];
        __pyx_v_fill_value = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_make_na_block", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3401; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._make_na_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_166_make_na_block(__pyx_self, __pyx_v_self, __pyx_v_items, __pyx_v_ref_items, __pyx_v_placement, __pyx_v_fill_value);

     3403:         # TODO: infer dtypes other than float64 from fill_value

     3404:

     3405:         if fill_value is None:

      /* "pandas/internals.pyx":3405
     *         # TODO: infer dtypes other than float64 from fill_value
     *
     *         if fill_value is None:             # <<<<<<<<<<<<<<
     *             fill_value = np.nan
     *         block_shape = list(self.shape)
     */
      __pyx_t_1 = (__pyx_v_fill_value == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     3406:             fill_value = np.nan

        /* "pandas/internals.pyx":3406
     *
     *         if fill_value is None:
     *             fill_value = np.nan             # <<<<<<<<<<<<<<
     *         block_shape = list(self.shape)
     *         block_shape[0] = len(items)
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3406; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_nan); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3406; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     3407:         block_shape = list(self.shape)

      /* "pandas/internals.pyx":3407
     *         if fill_value is None:
     *             fill_value = np.nan
     *         block_shape = list(self.shape)             # <<<<<<<<<<<<<<
     *         block_shape[0] = len(items)
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3407; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3407; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3407; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_block_shape = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

     3408:         block_shape[0] = len(items)

      /* "pandas/internals.pyx":3408
     *             fill_value = np.nan
     *         block_shape = list(self.shape)
     *         block_shape[0] = len(items)             # <<<<<<<<<<<<<<
     *
     *         dtype, fill_value = com._infer_dtype_from_scalar(fill_value)
     */
      __pyx_t_5 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (unlikely(__Pyx_SetItemInt(__pyx_v_block_shape, 0, __pyx_t_4, long, 1, __Pyx_PyInt_From_long, 1, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3408; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3409:

     3410:         dtype, fill_value = com._infer_dtype_from_scalar(fill_value)

      /* "pandas/internals.pyx":3410
     *         block_shape[0] = len(items)
     *
     *         dtype, fill_value = com._infer_dtype_from_scalar(fill_value)             # <<<<<<<<<<<<<<
     *         block_values = np.empty(block_shape, dtype=dtype)
     *         block_values.fill(fill_value)
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_infer_dtype_from_scalar); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_fill_value);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_fill_value);
      __Pyx_GIVEREF(__pyx_v_fill_value);
      __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
        PyObject* sequence = __pyx_t_6;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_4 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_4 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_t_3);
        #else
        __pyx_t_4 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        #endif
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
        index = 0; __pyx_t_4 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_4)) goto __pyx_L4_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_4);
        index = 1; __pyx_t_3 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_3)) goto __pyx_L4_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = NULL;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        goto __pyx_L5_unpacking_done;
        __pyx_L4_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3410; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L5_unpacking_done:;
      }
      __pyx_v_dtype = __pyx_t_4;
      __pyx_t_4 = 0;
      __Pyx_DECREF_SET(__pyx_v_fill_value, __pyx_t_3);
      __pyx_t_3 = 0;

     3411:         block_values = np.empty(block_shape, dtype=dtype)

      /* "pandas/internals.pyx":3411
     *
     *         dtype, fill_value = com._infer_dtype_from_scalar(fill_value)
     *         block_values = np.empty(block_shape, dtype=dtype)             # <<<<<<<<<<<<<<
     *         block_values.fill(fill_value)
     *         return make_block(block_values, items, ref_items, placement=placement)
     */
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_empty); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_block_shape);
      PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_block_shape);
      __Pyx_GIVEREF(__pyx_v_block_shape);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_6, __pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3411; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_block_values = __pyx_t_7;
      __pyx_t_7 = 0;

     3412:         block_values.fill(fill_value)

      /* "pandas/internals.pyx":3412
     *         dtype, fill_value = com._infer_dtype_from_scalar(fill_value)
     *         block_values = np.empty(block_shape, dtype=dtype)
     *         block_values.fill(fill_value)             # <<<<<<<<<<<<<<
     *         return make_block(block_values, items, ref_items, placement=placement)
     *
     */
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_block_values, __pyx_n_s_fill); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3412; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3412; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_fill_value);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_fill_value);
      __Pyx_GIVEREF(__pyx_v_fill_value);
      __pyx_t_6 = PyObject_Call(__pyx_t_7, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3412; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3413:         return make_block(block_values, items, ref_items, placement=placement)

      /* "pandas/internals.pyx":3413
     *         block_values = np.empty(block_shape, dtype=dtype)
     *         block_values.fill(fill_value)
     *         return make_block(block_values, items, ref_items, placement=placement)             # <<<<<<<<<<<<<<
     *
     *     def take(self, indexer, new_index=None, axis=1, verify=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_block_values);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_block_values);
      __Pyx_GIVEREF(__pyx_v_block_values);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_3 = PyObject_Call(__pyx_t_6, __pyx_t_4, __pyx_t_7); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     3414:

     3415:     def take(self, indexer, new_index=None, axis=1, verify=True):

    /* "pandas/internals.pyx":3415
     *         return make_block(block_values, items, ref_items, placement=placement)
     *
     *     def take(self, indexer, new_index=None, axis=1, verify=True):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_169take(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_169take = {__Pyx_NAMESTR("take"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_169take, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_169take(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_new_index = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_verify = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_indexer,&__pyx_n_s_new_index,&__pyx_n_s_axis,&__pyx_n_s_verify,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)__pyx_int_1));
        values[4] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("take", 0, 2, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_index);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_verify);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "take") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_indexer = values[1];
        __pyx_v_new_index = values[2];
        __pyx_v_axis = values[3];
        __pyx_v_verify = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("take", 0, 2, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.take", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_168take(__pyx_self, __pyx_v_self, __pyx_v_indexer, __pyx_v_new_index, __pyx_v_axis, __pyx_v_verify);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_168take(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_indexer, PyObject *__pyx_v_new_index, PyObject *__pyx_v_axis, PyObject *__pyx_v_verify) {
      Py_ssize_t __pyx_v_n;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("take", 0);
      __Pyx_INCREF(__pyx_v_indexer);
      __Pyx_INCREF(__pyx_v_new_index);

      /* "pandas/internals.pyx":3415
     *         return make_block(block_values, items, ref_items, placement=placement)
     *
     *     def take(self, indexer, new_index=None, axis=1, verify=True):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.BlockManager.take", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XDECREF(__pyx_v_new_index);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3415
     *         return make_block(block_values, items, ref_items, placement=placement)
     *
     *     def take(self, indexer, new_index=None, axis=1, verify=True):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */
      __pyx_tuple__663 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_indexer, __pyx_n_s_new_index, __pyx_n_s_axis, __pyx_n_s_verify, __pyx_n_s_n, __pyx_n_s_new_axes); if (unlikely(!__pyx_tuple__663)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__663);
      __Pyx_GIVEREF(__pyx_tuple__663);
      __pyx_codeobj__664 = (PyObject*)__Pyx_PyCode_New(5, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__663, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_take, 3415, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__664)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3415
     *         return make_block(block_values, items, ref_items, placement=placement)
     *
     *     def take(self, indexer, new_index=None, axis=1, verify=True):             # <<<<<<<<<<<<<<
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_169take, 0, __pyx_n_s_BlockManager_take, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__664)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__665);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_take, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__665 = PyTuple_Pack(3, ((PyObject *)Py_None), ((PyObject *)__pyx_int_1), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__665)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__665);
      __Pyx_GIVEREF(__pyx_tuple__665);

     3416:         if axis < 1:

      /* "pandas/internals.pyx":3416
     *
     *     def take(self, indexer, new_index=None, axis=1, verify=True):
     *         if axis < 1:             # <<<<<<<<<<<<<<
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_1, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     3417:             raise AssertionError('axis must be at least 1, got %d' % axis)

        /* "pandas/internals.pyx":3417
     *     def take(self, indexer, new_index=None, axis=1, verify=True):
     *         if axis < 1:
     *             raise AssertionError('axis must be at least 1, got %d' % axis)             # <<<<<<<<<<<<<<
     *
     *         self._consolidate_inplace()
     */
        __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_axis_must_be_at_least_1_got_d, __pyx_v_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     3418:

     3419:         self._consolidate_inplace()

      /* "pandas/internals.pyx":3419
     *             raise AssertionError('axis must be at least 1, got %d' % axis)
     *
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         if isinstance(indexer, list):
     *             indexer = np.array(indexer)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3420:         if isinstance(indexer, list):

      /* "pandas/internals.pyx":3420
     *
     *         self._consolidate_inplace()
     *         if isinstance(indexer, list):             # <<<<<<<<<<<<<<
     *             indexer = np.array(indexer)
     *
     */
      __pyx_t_2 = PyList_Check(__pyx_v_indexer);
      __pyx_t_4 = (__pyx_t_2 != 0);
      if (__pyx_t_4) {

     3421:             indexer = np.array(indexer)

        /* "pandas/internals.pyx":3421
     *         self._consolidate_inplace()
     *         if isinstance(indexer, list):
     *             indexer = np.array(indexer)             # <<<<<<<<<<<<<<
     *
     *         indexer = com._ensure_platform_int(indexer)
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3421; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_array); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3421; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3421; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3421; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_5);
        __pyx_t_5 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     3422:

     3423:         indexer = com._ensure_platform_int(indexer)

      /* "pandas/internals.pyx":3423
     *             indexer = np.array(indexer)
     *
     *         indexer = com._ensure_platform_int(indexer)             # <<<<<<<<<<<<<<
     *         n = len(self.axes[axis])
     *
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_ensure_platform_int); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_indexer);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_indexer);
      __Pyx_GIVEREF(__pyx_v_indexer);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_1);
      __pyx_t_1 = 0;

     3424:         n = len(self.axes[axis])

      /* "pandas/internals.pyx":3424
     *
     *         indexer = com._ensure_platform_int(indexer)
     *         n = len(self.axes[axis])             # <<<<<<<<<<<<<<
     *
     *         if verify:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3424; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyObject_GetItem(__pyx_t_1, __pyx_v_axis); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3424; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_6 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3424; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_n = __pyx_t_6;

     3425:

     3426:         if verify:

      /* "pandas/internals.pyx":3426
     *         n = len(self.axes[axis])
     *
     *         if verify:             # <<<<<<<<<<<<<<
     *             indexer = _maybe_convert_indices(indexer, n)
     *             if ((indexer == -1) | (indexer >= n)).any():
     */
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_verify); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3426; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_4) {

     3427:             indexer = _maybe_convert_indices(indexer, n)

        /* "pandas/internals.pyx":3427
     *
     *         if verify:
     *             indexer = _maybe_convert_indices(indexer, n)             # <<<<<<<<<<<<<<
     *             if ((indexer == -1) | (indexer >= n)).any():
     *                 raise Exception('Indices must be nonzero and less than '
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_maybe_convert_indices); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_n); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_indexer, __pyx_t_1);
        __pyx_t_1 = 0;

     3428:             if ((indexer == -1) | (indexer >= n)).any():

        /* "pandas/internals.pyx":3428
     *         if verify:
     *             indexer = _maybe_convert_indices(indexer, n)
     *             if ((indexer == -1) | (indexer >= n)).any():             # <<<<<<<<<<<<<<
     *                 raise Exception('Indices must be nonzero and less than '
     *                                 'the axis length')
     */
        __pyx_t_1 = PyObject_RichCompare(__pyx_v_indexer, __pyx_int_neg_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_3 = PyInt_FromSsize_t(__pyx_v_n); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = PyObject_RichCompare(__pyx_v_indexer, __pyx_t_3, Py_GE); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyNumber_Or(__pyx_t_1, __pyx_t_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_any); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_4) {

     3429:                 raise Exception('Indices must be nonzero and less than '

          /* "pandas/internals.pyx":3429
     *             indexer = _maybe_convert_indices(indexer, n)
     *             if ((indexer == -1) | (indexer >= n)).any():
     *                 raise Exception('Indices must be nonzero and less than '             # <<<<<<<<<<<<<<
     *                                 'the axis length')
     *
     */
          __pyx_t_3 = PyObject_Call(__pyx_builtin_Exception, __pyx_tuple__107, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_Raise(__pyx_t_3, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        goto __pyx_L5;
      }
      __pyx_L5:;

      /* "pandas/internals.pyx":3429
     *             indexer = _maybe_convert_indices(indexer, n)
     *             if ((indexer == -1) | (indexer >= n)).any():
     *                 raise Exception('Indices must be nonzero and less than '             # <<<<<<<<<<<<<<
     *                                 'the axis length')
     *
     */
      __pyx_tuple__107 = PyTuple_Pack(1, __pyx_kp_s_Indices_must_be_nonzero_and_less); if (unlikely(!__pyx_tuple__107)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3429; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__107);
      __Pyx_GIVEREF(__pyx_tuple__107);

     3430:                                 'the axis length')

     3431:

     3432:         new_axes = list(self.axes)

      /* "pandas/internals.pyx":3432
     *                                 'the axis length')
     *
     *         new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *         if new_index is None:
     *             new_index = self.axes[axis].take(indexer)
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_3);
      __pyx_t_3 = 0;

     3433:         if new_index is None:

      /* "pandas/internals.pyx":3433
     *
     *         new_axes = list(self.axes)
     *         if new_index is None:             # <<<<<<<<<<<<<<
     *             new_index = self.axes[axis].take(indexer)
     *
     */
      __pyx_t_4 = (__pyx_v_new_index == Py_None);
      __pyx_t_2 = (__pyx_t_4 != 0);
      if (__pyx_t_2) {

     3434:             new_index = self.axes[axis].take(indexer)

        /* "pandas/internals.pyx":3434
     *         new_axes = list(self.axes)
     *         if new_index is None:
     *             new_index = self.axes[axis].take(indexer)             # <<<<<<<<<<<<<<
     *
     *         new_axes[axis] = new_index
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = PyObject_GetItem(__pyx_t_3, __pyx_v_axis); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3434; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_take); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF_SET(__pyx_v_new_index, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L7;
      }
      __pyx_L7:;

     3435:

     3436:         new_axes[axis] = new_index

      /* "pandas/internals.pyx":3436
     *             new_index = self.axes[axis].take(indexer)
     *
     *         new_axes[axis] = new_index             # <<<<<<<<<<<<<<
     *         return self.apply('take',
     *                           axes=new_axes,
     */
      if (unlikely(PyObject_SetItem(__pyx_v_new_axes, __pyx_v_axis, __pyx_v_new_index) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3436; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3437:         return self.apply('take',

      /* "pandas/internals.pyx":3437
     *
     *         new_axes[axis] = new_index
     *         return self.apply('take',             # <<<<<<<<<<<<<<
     *                           axes=new_axes,
     *                           indexer=indexer,
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);

      /* "pandas/internals.pyx":3437
     *
     *         new_axes[axis] = new_index
     *         return self.apply('take',             # <<<<<<<<<<<<<<
     *                           axes=new_axes,
     *                           indexer=indexer,
     */
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__108, __pyx_t_5); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":3437
     *
     *         new_axes[axis] = new_index
     *         return self.apply('take',             # <<<<<<<<<<<<<<
     *                           axes=new_axes,
     *                           indexer=indexer,
     */
      __pyx_tuple__108 = PyTuple_Pack(1, __pyx_n_s_take); if (unlikely(!__pyx_tuple__108)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__108);
      __Pyx_GIVEREF(__pyx_tuple__108);

     3438:                           axes=new_axes,

      /* "pandas/internals.pyx":3438
     *         new_axes[axis] = new_index
     *         return self.apply('take',
     *                           axes=new_axes,             # <<<<<<<<<<<<<<
     *                           indexer=indexer,
     *                           ref_items=new_axes[0],
     */
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_axes, __pyx_v_new_axes) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3439:                           indexer=indexer,

      /* "pandas/internals.pyx":3439
     *         return self.apply('take',
     *                           axes=new_axes,
     *                           indexer=indexer,             # <<<<<<<<<<<<<<
     *                           ref_items=new_axes[0],
     *                           new_axis=new_axes[axis],
     */
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_indexer, __pyx_v_indexer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3440:                           ref_items=new_axes[0],

      /* "pandas/internals.pyx":3440
     *                           axes=new_axes,
     *                           indexer=indexer,
     *                           ref_items=new_axes[0],             # <<<<<<<<<<<<<<
     *                           new_axis=new_axes[axis],
     *                           axis=axis)
     */
      __pyx_t_3 = __Pyx_GetItemInt_List(__pyx_v_new_axes, 0, long, 1, __Pyx_PyInt_From_long, 1, 0, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3440; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_ref_items, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3441:                           new_axis=new_axes[axis],

      /* "pandas/internals.pyx":3441
     *                           indexer=indexer,
     *                           ref_items=new_axes[0],
     *                           new_axis=new_axes[axis],             # <<<<<<<<<<<<<<
     *                           axis=axis)
     *
     */
      __pyx_t_3 = PyObject_GetItem(__pyx_v_new_axes, __pyx_v_axis); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3441; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_new_axis, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3442:                           axis=axis)

      /* "pandas/internals.pyx":3442
     *                           ref_items=new_axes[0],
     *                           new_axis=new_axes[axis],
     *                           axis=axis)             # <<<<<<<<<<<<<<
     *
     *     def merge(self, other, lsuffix=None, rsuffix=None):
     */
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3437; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3443:

     3444:     def merge(self, other, lsuffix=None, rsuffix=None):

    /* "pandas/internals.pyx":3444
     *                           axis=axis)
     *
     *     def merge(self, other, lsuffix=None, rsuffix=None):             # <<<<<<<<<<<<<<
     *         if not self._is_indexed_like(other):
     *             raise AssertionError('Must have same axes to merge managers')
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_171merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_171merge = {__Pyx_NAMESTR("merge"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_171merge, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_171merge(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_v_lsuffix = 0;
      PyObject *__pyx_v_rsuffix = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("merge (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,&__pyx_n_s_lsuffix,&__pyx_n_s_rsuffix,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("merge", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lsuffix);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rsuffix);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "merge") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
        __pyx_v_lsuffix = values[2];
        __pyx_v_rsuffix = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("merge", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_170merge(__pyx_self, __pyx_v_self, __pyx_v_other, __pyx_v_lsuffix, __pyx_v_rsuffix);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_170merge(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other, PyObject *__pyx_v_lsuffix, PyObject *__pyx_v_rsuffix) {
      PyObject *__pyx_v_this = NULL;
      PyObject *__pyx_v_cons_items = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_v_consolidated = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("merge", 0);
      __Pyx_INCREF(__pyx_v_other);

      /* "pandas/internals.pyx":3444
     *                           axis=axis)
     *
     *     def merge(self, other, lsuffix=None, rsuffix=None):             # <<<<<<<<<<<<<<
     *         if not self._is_indexed_like(other):
     *             raise AssertionError('Must have same axes to merge managers')
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.BlockManager.merge", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_this);
      __Pyx_XDECREF(__pyx_v_cons_items);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_XDECREF(__pyx_v_consolidated);
      __Pyx_XDECREF(__pyx_v_other);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3444
     *                           axis=axis)
     *
     *     def merge(self, other, lsuffix=None, rsuffix=None):             # <<<<<<<<<<<<<<
     *         if not self._is_indexed_like(other):
     *             raise AssertionError('Must have same axes to merge managers')
     */
      __pyx_tuple__666 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_other, __pyx_n_s_lsuffix, __pyx_n_s_rsuffix, __pyx_n_s_this, __pyx_n_s_cons_items, __pyx_n_s_new_axes, __pyx_n_s_consolidated); if (unlikely(!__pyx_tuple__666)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__666);
      __Pyx_GIVEREF(__pyx_tuple__666);
      __pyx_codeobj__667 = (PyObject*)__Pyx_PyCode_New(4, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__666, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_merge, 3444, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__667)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3444
     *                           axis=axis)
     *
     *     def merge(self, other, lsuffix=None, rsuffix=None):             # <<<<<<<<<<<<<<
     *         if not self._is_indexed_like(other):
     *             raise AssertionError('Must have same axes to merge managers')
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_171merge, 0, __pyx_n_s_BlockManager_merge, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__667)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__668);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_merge, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__668 = PyTuple_Pack(2, ((PyObject *)Py_None), ((PyObject *)Py_None)); if (unlikely(!__pyx_tuple__668)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3444; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__668);
      __Pyx_GIVEREF(__pyx_tuple__668);

     3445:         if not self._is_indexed_like(other):

      /* "pandas/internals.pyx":3445
     *
     *     def merge(self, other, lsuffix=None, rsuffix=None):
     *         if not self._is_indexed_like(other):             # <<<<<<<<<<<<<<
     *             raise AssertionError('Must have same axes to merge managers')
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_is_indexed_like); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3445; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3445; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3445; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3445; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_5 = ((!__pyx_t_4) != 0);
      if (__pyx_t_5) {

     3446:             raise AssertionError('Must have same axes to merge managers')

        /* "pandas/internals.pyx":3446
     *     def merge(self, other, lsuffix=None, rsuffix=None):
     *         if not self._is_indexed_like(other):
     *             raise AssertionError('Must have same axes to merge managers')             # <<<<<<<<<<<<<<
     *
     *         this, other = self._maybe_rename_join(other, lsuffix, rsuffix)
     */
        __pyx_t_3 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__109, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3446; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_Raise(__pyx_t_3, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3446; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":3446
     *     def merge(self, other, lsuffix=None, rsuffix=None):
     *         if not self._is_indexed_like(other):
     *             raise AssertionError('Must have same axes to merge managers')             # <<<<<<<<<<<<<<
     *
     *         this, other = self._maybe_rename_join(other, lsuffix, rsuffix)
     */
      __pyx_tuple__109 = PyTuple_Pack(1, __pyx_kp_s_Must_have_same_axes_to_merge_man); if (unlikely(!__pyx_tuple__109)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3446; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__109);
      __Pyx_GIVEREF(__pyx_tuple__109);

     3447:

     3448:         this, other = self._maybe_rename_join(other, lsuffix, rsuffix)

      /* "pandas/internals.pyx":3448
     *             raise AssertionError('Must have same axes to merge managers')
     *
     *         this, other = self._maybe_rename_join(other, lsuffix, rsuffix)             # <<<<<<<<<<<<<<
     *
     *         cons_items = this.items + other.items
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_maybe_rename_join); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __Pyx_INCREF(__pyx_v_lsuffix);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_lsuffix);
      __Pyx_GIVEREF(__pyx_v_lsuffix);
      __Pyx_INCREF(__pyx_v_rsuffix);
      PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_rsuffix);
      __Pyx_GIVEREF(__pyx_v_rsuffix);
      __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) {
        PyObject* sequence = __pyx_t_1;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_3);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        #endif
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_6 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_2)) goto __pyx_L4_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_3 = __pyx_t_7(__pyx_t_6); if (unlikely(!__pyx_t_3)) goto __pyx_L4_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_3);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_7(__pyx_t_6), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_7 = NULL;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        goto __pyx_L5_unpacking_done;
        __pyx_L4_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3448; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L5_unpacking_done:;
      }
      __pyx_v_this = __pyx_t_2;
      __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_3);
      __pyx_t_3 = 0;

     3449:

     3450:         cons_items = this.items + other.items

      /* "pandas/internals.pyx":3450
     *         this, other = self._maybe_rename_join(other, lsuffix, rsuffix)
     *
     *         cons_items = this.items + other.items             # <<<<<<<<<<<<<<
     *         new_axes = list(this.axes)
     *         new_axes[0] = cons_items
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_this, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3450; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3450; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3450; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_cons_items = __pyx_t_2;
      __pyx_t_2 = 0;

     3451:         new_axes = list(this.axes)

      /* "pandas/internals.pyx":3451
     *
     *         cons_items = this.items + other.items
     *         new_axes = list(this.axes)             # <<<<<<<<<<<<<<
     *         new_axes[0] = cons_items
     *
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_this, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3451; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     3452:         new_axes[0] = cons_items

      /* "pandas/internals.pyx":3452
     *         cons_items = this.items + other.items
     *         new_axes = list(this.axes)
     *         new_axes[0] = cons_items             # <<<<<<<<<<<<<<
     *
     *         consolidated = _consolidate(this.blocks + other.blocks, cons_items)
     */
      if (unlikely(__Pyx_SetItemInt(__pyx_v_new_axes, 0, __pyx_v_cons_items, long, 1, __Pyx_PyInt_From_long, 1, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3452; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3453:

     3454:         consolidated = _consolidate(this.blocks + other.blocks, cons_items)

      /* "pandas/internals.pyx":3454
     *         new_axes[0] = cons_items
     *
     *         consolidated = _consolidate(this.blocks + other.blocks, cons_items)             # <<<<<<<<<<<<<<
     *         return self.__class__(consolidated, new_axes)
     *
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_consolidate); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_this, __pyx_n_s_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_6 = PyNumber_Add(__pyx_t_3, __pyx_t_1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_cons_items);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_cons_items);
      __Pyx_GIVEREF(__pyx_v_cons_items);
      __pyx_t_6 = 0;
      __pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3454; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_consolidated = __pyx_t_6;
      __pyx_t_6 = 0;

     3455:         return self.__class__(consolidated, new_axes)

      /* "pandas/internals.pyx":3455
     *
     *         consolidated = _consolidate(this.blocks + other.blocks, cons_items)
     *         return self.__class__(consolidated, new_axes)             # <<<<<<<<<<<<<<
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3455; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3455; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_consolidated);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_consolidated);
      __Pyx_GIVEREF(__pyx_v_consolidated);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_2 = PyObject_Call(__pyx_t_6, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3455; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3456:

     3457:     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):

    /* "pandas/internals.pyx":3457
     *         return self.__class__(consolidated, new_axes)
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):             # <<<<<<<<<<<<<<
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_173_maybe_rename_join(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_173_maybe_rename_join = {__Pyx_NAMESTR("_maybe_rename_join"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_173_maybe_rename_join, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_173_maybe_rename_join(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_v_lsuffix = 0;
      PyObject *__pyx_v_rsuffix = 0;
      PyObject *__pyx_v_copydata = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_maybe_rename_join (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,&__pyx_n_s_lsuffix,&__pyx_n_s_rsuffix,&__pyx_n_s_copydata,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[4] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_maybe_rename_join", 0, 4, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_lsuffix)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_maybe_rename_join", 0, 4, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_rsuffix)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_maybe_rename_join", 0, 4, 5, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copydata);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_maybe_rename_join") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
        __pyx_v_lsuffix = values[2];
        __pyx_v_rsuffix = values[3];
        __pyx_v_copydata = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_maybe_rename_join", 0, 4, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._maybe_rename_join", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_172_maybe_rename_join(__pyx_self, __pyx_v_self, __pyx_v_other, __pyx_v_lsuffix, __pyx_v_rsuffix, __pyx_v_copydata);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":3457
     *         return self.__class__(consolidated, new_axes)
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):             # <<<<<<<<<<<<<<
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_172_maybe_rename_join(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other, PyObject *__pyx_v_lsuffix, PyObject *__pyx_v_rsuffix, PyObject *__pyx_v_copydata) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *__pyx_cur_scope;
      PyObject *__pyx_v_lrenamer = 0;
      PyObject *__pyx_v_rrenamer = 0;
      PyObject *__pyx_v_this = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_maybe_rename_join", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join(__pyx_ptype_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_lsuffix = __pyx_v_lsuffix;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_lsuffix);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_lsuffix);
      __pyx_cur_scope->__pyx_v_rsuffix = __pyx_v_rsuffix;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_rsuffix);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_rsuffix);
      __Pyx_INCREF(__pyx_v_other);

      /* "pandas/internals.pyx":3457
     *         return self.__class__(consolidated, new_axes)
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):             # <<<<<<<<<<<<<<
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.BlockManager._maybe_rename_join", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_lrenamer);
      __Pyx_XDECREF(__pyx_v_rrenamer);
      __Pyx_XDECREF(__pyx_v_this);
      __Pyx_XDECREF(__pyx_v_other);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3457
     *         return self.__class__(consolidated, new_axes)
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):             # <<<<<<<<<<<<<<
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:
     */
      __pyx_tuple__669 = PyTuple_Pack(11, __pyx_n_s_self, __pyx_n_s_other, __pyx_n_s_lsuffix, __pyx_n_s_rsuffix, __pyx_n_s_copydata, __pyx_n_s_to_rename, __pyx_n_s_lrenamer, __pyx_n_s_lrenamer, __pyx_n_s_rrenamer, __pyx_n_s_rrenamer, __pyx_n_s_this); if (unlikely(!__pyx_tuple__669)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__669);
      __Pyx_GIVEREF(__pyx_tuple__669);
      __pyx_codeobj__670 = (PyObject*)__Pyx_PyCode_New(5, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__669, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_maybe_rename_join, 3457, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__670)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3457
     *         return self.__class__(consolidated, new_axes)
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):             # <<<<<<<<<<<<<<
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_173_maybe_rename_join, 0, __pyx_n_s_BlockManager__maybe_rename_join_3, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__670)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__671);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_maybe_rename_join, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__671 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__671)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3457; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__671);
      __Pyx_GIVEREF(__pyx_tuple__671);

    /* "pandas/internals.pyx":3457
     *         return self.__class__(consolidated, new_axes)
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):             # <<<<<<<<<<<<<<
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join {
      PyObject_HEAD
      PyObject *__pyx_v_lsuffix;
      PyObject *__pyx_v_rsuffix;
      PyObject *__pyx_v_to_rename;
    };

     3458:         to_rename = self.items.intersection(other.items)

      /* "pandas/internals.pyx":3458
     *
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):
     *         to_rename = self.items.intersection(other.items)             # <<<<<<<<<<<<<<
     *         if len(to_rename) > 0:
     *             if not lsuffix and not rsuffix:
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_intersection); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3458; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_cur_scope->__pyx_v_to_rename = __pyx_t_1;
      __pyx_t_1 = 0;

     3459:         if len(to_rename) > 0:

      /* "pandas/internals.pyx":3459
     *     def _maybe_rename_join(self, other, lsuffix, rsuffix, copydata=True):
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:             # <<<<<<<<<<<<<<
     *             if not lsuffix and not rsuffix:
     *                 raise ValueError('columns overlap but no suffix specified: %s'
     */
      __pyx_t_1 = __pyx_cur_scope->__pyx_v_to_rename;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_4 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3459; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_5 = ((__pyx_t_4 > 0) != 0);
      if (__pyx_t_5) {

     3460:             if not lsuffix and not rsuffix:

        /* "pandas/internals.pyx":3460
     *         to_rename = self.items.intersection(other.items)
     *         if len(to_rename) > 0:
     *             if not lsuffix and not rsuffix:             # <<<<<<<<<<<<<<
     *                 raise ValueError('columns overlap but no suffix specified: %s'
     *                                  % to_rename)
     */
        __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_lsuffix); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = ((!__pyx_t_5) != 0);
        if (__pyx_t_6) {
          __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_cur_scope->__pyx_v_rsuffix); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3460; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_7 = ((!__pyx_t_5) != 0);
          __pyx_t_5 = __pyx_t_7;
        } else {
          __pyx_t_5 = __pyx_t_6;
        }
        if (__pyx_t_5) {

     3461:                 raise ValueError('columns overlap but no suffix specified: %s'

          /* "pandas/internals.pyx":3461
     *         if len(to_rename) > 0:
     *             if not lsuffix and not rsuffix:
     *                 raise ValueError('columns overlap but no suffix specified: %s'             # <<<<<<<<<<<<<<
     *                                  % to_rename)
     *
     */
          __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_Raise(__pyx_t_1, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3461; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }

     3462:                                  % to_rename)

          /* "pandas/internals.pyx":3462
     *             if not lsuffix and not rsuffix:
     *                 raise ValueError('columns overlap but no suffix specified: %s'
     *                                  % to_rename)             # <<<<<<<<<<<<<<
     *
     *             def lrenamer(x):
     */
          __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_columns_overlap_but_no_suffix_sp, __pyx_cur_scope->__pyx_v_to_rename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3462; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);

     3463:

     3464:             def lrenamer(x):

    /* "pandas/internals.pyx":3464
     *                                  % to_rename)
     *
     *             def lrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, lsuffix)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_18_maybe_rename_join_1lrenamer(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_18_maybe_rename_join_1lrenamer = {__Pyx_NAMESTR("lrenamer"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_18_maybe_rename_join_1lrenamer, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_18_maybe_rename_join_1lrenamer(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lrenamer (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_18_maybe_rename_join_lrenamer(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_18_maybe_rename_join_lrenamer(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lrenamer", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":3464
     *                                  % to_rename)
     *
     *             def lrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, lsuffix)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager._maybe_rename_join.lrenamer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3464
     *                                  % to_rename)
     *
     *             def lrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, lsuffix)
     */
      __pyx_tuple__110 = PyTuple_Pack(1, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__110)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__110);
      __Pyx_GIVEREF(__pyx_tuple__110);

        /* "pandas/internals.pyx":3464
     *                                  % to_rename)
     *
     *             def lrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, lsuffix)
     */
        __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_18_maybe_rename_join_1lrenamer, 0, __pyx_n_s_BlockManager__maybe_rename_join, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__111)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_v_lrenamer = __pyx_t_1;
        __pyx_t_1 = 0;
      __pyx_codeobj__111 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__110, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_lrenamer, 3464, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__111)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3464; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3465:                 if x in to_rename:

      /* "pandas/internals.pyx":3465
     *
     *             def lrenamer(x):
     *                 if x in to_rename:             # <<<<<<<<<<<<<<
     *                     return '%s%s' % (x, lsuffix)
     *                 return x
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_to_rename)) { __Pyx_RaiseClosureNameError("to_rename"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3465; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = (__Pyx_PySequence_Contains(__pyx_v_x, __pyx_cur_scope->__pyx_v_to_rename, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3465; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     3466:                     return '%s%s' % (x, lsuffix)

        /* "pandas/internals.pyx":3466
     *             def lrenamer(x):
     *                 if x in to_rename:
     *                     return '%s%s' % (x, lsuffix)             # <<<<<<<<<<<<<<
     *                 return x
     *
     */
        __Pyx_XDECREF(__pyx_r);
        if (unlikely(!__pyx_cur_scope->__pyx_v_lsuffix)) { __Pyx_RaiseClosureNameError("lsuffix"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3466; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_x);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_x);
        __Pyx_GIVEREF(__pyx_v_x);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_lsuffix);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_cur_scope->__pyx_v_lsuffix);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_lsuffix);
        __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_s_s_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3466; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

     3467:                 return x

      /* "pandas/internals.pyx":3467
     *                 if x in to_rename:
     *                     return '%s%s' % (x, lsuffix)
     *                 return x             # <<<<<<<<<<<<<<
     *
     *             def rrenamer(x):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_x);
      __pyx_r = __pyx_v_x;
      goto __pyx_L0;

     3468:

     3469:             def rrenamer(x):

    /* "pandas/internals.pyx":3469
     *                 return x
     *
     *             def rrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, rsuffix)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_18_maybe_rename_join_3rrenamer(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_18_maybe_rename_join_3rrenamer = {__Pyx_NAMESTR("rrenamer"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_18_maybe_rename_join_3rrenamer, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_18_maybe_rename_join_3rrenamer(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rrenamer (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_18_maybe_rename_join_2rrenamer(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_18_maybe_rename_join_2rrenamer(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *__pyx_cur_scope;
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *__pyx_outer_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rrenamer", 0);
      __pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_18__maybe_rename_join *) __Pyx_CyFunction_GetClosure(__pyx_self);
      __pyx_cur_scope = __pyx_outer_scope;

      /* "pandas/internals.pyx":3469
     *                 return x
     *
     *             def rrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, rsuffix)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.BlockManager._maybe_rename_join.rrenamer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3469
     *                 return x
     *
     *             def rrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, rsuffix)
     */
      __pyx_tuple__112 = PyTuple_Pack(1, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__112)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3469; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__112);
      __Pyx_GIVEREF(__pyx_tuple__112);

        /* "pandas/internals.pyx":3469
     *                 return x
     *
     *             def rrenamer(x):             # <<<<<<<<<<<<<<
     *                 if x in to_rename:
     *                     return '%s%s' % (x, rsuffix)
     */
        __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_18_maybe_rename_join_3rrenamer, 0, __pyx_n_s_BlockManager__maybe_rename_join_2, ((PyObject*)__pyx_cur_scope), __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__113)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3469; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_v_rrenamer = __pyx_t_1;
        __pyx_t_1 = 0;
      __pyx_codeobj__113 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__112, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_rrenamer, 3469, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__113)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3469; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3470:                 if x in to_rename:

      /* "pandas/internals.pyx":3470
     *
     *             def rrenamer(x):
     *                 if x in to_rename:             # <<<<<<<<<<<<<<
     *                     return '%s%s' % (x, rsuffix)
     *                 return x
     */
      if (unlikely(!__pyx_cur_scope->__pyx_v_to_rename)) { __Pyx_RaiseClosureNameError("to_rename"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3470; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = (__Pyx_PySequence_Contains(__pyx_v_x, __pyx_cur_scope->__pyx_v_to_rename, Py_EQ)); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3470; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     3471:                     return '%s%s' % (x, rsuffix)

        /* "pandas/internals.pyx":3471
     *             def rrenamer(x):
     *                 if x in to_rename:
     *                     return '%s%s' % (x, rsuffix)             # <<<<<<<<<<<<<<
     *                 return x
     *
     */
        __Pyx_XDECREF(__pyx_r);
        if (unlikely(!__pyx_cur_scope->__pyx_v_rsuffix)) { __Pyx_RaiseClosureNameError("rsuffix"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3471; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3471; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_x);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_x);
        __Pyx_GIVEREF(__pyx_v_x);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_rsuffix);
        PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_cur_scope->__pyx_v_rsuffix);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_rsuffix);
        __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_s_s_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3471; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

     3472:                 return x

      /* "pandas/internals.pyx":3472
     *                 if x in to_rename:
     *                     return '%s%s' % (x, rsuffix)
     *                 return x             # <<<<<<<<<<<<<<
     *
     *             this = self.rename_items(lrenamer, copy=copydata)
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_x);
      __pyx_r = __pyx_v_x;
      goto __pyx_L0;

     3473:

     3474:             this = self.rename_items(lrenamer, copy=copydata)

        /* "pandas/internals.pyx":3474
     *                 return x
     *
     *             this = self.rename_items(lrenamer, copy=copydata)             # <<<<<<<<<<<<<<
     *             other = other.rename_items(rrenamer, copy=copydata)
     *         else:
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_rename_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_lrenamer);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_lrenamer);
        __Pyx_GIVEREF(__pyx_v_lrenamer);
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_copy, __pyx_v_copydata) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = PyObject_Call(__pyx_t_1, __pyx_t_3, __pyx_t_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3474; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_this = __pyx_t_8;
        __pyx_t_8 = 0;

     3475:             other = other.rename_items(rrenamer, copy=copydata)

        /* "pandas/internals.pyx":3475
     *
     *             this = self.rename_items(lrenamer, copy=copydata)
     *             other = other.rename_items(rrenamer, copy=copydata)             # <<<<<<<<<<<<<<
     *         else:
     *             this = self
     */
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_rename_items); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_rrenamer);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_rrenamer);
        __Pyx_GIVEREF(__pyx_v_rrenamer);
        __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_copy, __pyx_v_copydata) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = PyObject_Call(__pyx_t_8, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3475; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_other, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     3476:         else:

     3477:             this = self

        /* "pandas/internals.pyx":3477
     *             other = other.rename_items(rrenamer, copy=copydata)
     *         else:
     *             this = self             # <<<<<<<<<<<<<<
     *
     *         return this, other
     */
        __Pyx_INCREF(__pyx_v_self);
        __pyx_v_this = __pyx_v_self;
      }
      __pyx_L3:;

     3478:

     3479:         return this, other

      /* "pandas/internals.pyx":3479
     *             this = self
     *
     *         return this, other             # <<<<<<<<<<<<<<
     *
     *     def _is_indexed_like(self, other):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3479; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_this);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_this);
      __Pyx_GIVEREF(__pyx_v_this);
      __Pyx_INCREF(__pyx_v_other);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_other);
      __Pyx_GIVEREF(__pyx_v_other);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     3480:

     3481:     def _is_indexed_like(self, other):

    /* "pandas/internals.pyx":3481
     *         return this, other
     *
     *     def _is_indexed_like(self, other):             # <<<<<<<<<<<<<<
     *         """
     *         Check all axes except items
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_175_is_indexed_like(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_174_is_indexed_like[] = "\n        Check all axes except items\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_175_is_indexed_like = {__Pyx_NAMESTR("_is_indexed_like"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_175_is_indexed_like, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_174_is_indexed_like)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_175_is_indexed_like(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_is_indexed_like (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_is_indexed_like", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3481; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_is_indexed_like") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3481; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_is_indexed_like", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3481; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager._is_indexed_like", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_174_is_indexed_like(__pyx_self, __pyx_v_self, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_174_is_indexed_like(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
      PyObject *__pyx_v_ax = NULL;
      PyObject *__pyx_v_oax = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_is_indexed_like", 0);

      /* "pandas/internals.pyx":3481
     *         return this, other
     *
     *     def _is_indexed_like(self, other):             # <<<<<<<<<<<<<<
     *         """
     *         Check all axes except items
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.BlockManager._is_indexed_like", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_ax);
      __Pyx_XDECREF(__pyx_v_oax);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3481
     *         return this, other
     *
     *     def _is_indexed_like(self, other):             # <<<<<<<<<<<<<<
     *         """
     *         Check all axes except items
     */
      __pyx_tuple__672 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_other, __pyx_n_s_ax, __pyx_n_s_oax); if (unlikely(!__pyx_tuple__672)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3481; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__672);
      __Pyx_GIVEREF(__pyx_tuple__672);

      /* "pandas/internals.pyx":3481
     *         return this, other
     *
     *     def _is_indexed_like(self, other):             # <<<<<<<<<<<<<<
     *         """
     *         Check all axes except items
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_175_is_indexed_like, 0, __pyx_n_s_BlockManager__is_indexed_like, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__673)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3481; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_indexed_like, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3481; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__673 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__672, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_indexed_like, 3481, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__673)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3481; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3482:         """

     3483:         Check all axes except items

     3484:         """

     3485:         if self.ndim != other.ndim:

      /* "pandas/internals.pyx":3485
     *         Check all axes except items
     *         """
     *         if self.ndim != other.ndim:             # <<<<<<<<<<<<<<
     *             raise AssertionError(('Number of dimensions must agree '
     *                                   'got %d and %d') % (self.ndim, other.ndim))
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_RichCompare(__pyx_t_1, __pyx_t_2, Py_NE); __Pyx_XGOTREF(__pyx_t_3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3485; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     3486:             raise AssertionError(('Number of dimensions must agree '

        /* "pandas/internals.pyx":3486
     *         """
     *         if self.ndim != other.ndim:
     *             raise AssertionError(('Number of dimensions must agree '             # <<<<<<<<<<<<<<
     *                                   'got %d and %d') % (self.ndim, other.ndim))
     *         for ax, oax in zip(self.axes[1:], other.axes[1:]):
     */
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_Raise(__pyx_t_2, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3486; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     3487:                                   'got %d and %d') % (self.ndim, other.ndim))

        /* "pandas/internals.pyx":3487
     *         if self.ndim != other.ndim:
     *             raise AssertionError(('Number of dimensions must agree '
     *                                   'got %d and %d') % (self.ndim, other.ndim))             # <<<<<<<<<<<<<<
     *         for ax, oax in zip(self.axes[1:], other.axes[1:]):
     *             if not ax.equals(oax):
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_ndim); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3487; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_ndim); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3487; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3487; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_3 = 0;
        __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyString_Format(__pyx_kp_s_Number_of_dimensions_must_agree, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3487; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3488:         for ax, oax in zip(self.axes[1:], other.axes[1:]):

      /* "pandas/internals.pyx":3488
     *             raise AssertionError(('Number of dimensions must agree '
     *                                   'got %d and %d') % (self.ndim, other.ndim))
     *         for ax, oax in zip(self.axes[1:], other.axes[1:]):             # <<<<<<<<<<<<<<
     *             if not ax.equals(oax):
     *                 return False
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetSlice(__pyx_t_1, 1, 0, NULL, NULL, &__pyx_slice__114, 1, 0, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_other, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);

      /* "pandas/internals.pyx":3488
     *             raise AssertionError(('Number of dimensions must agree '
     *                                   'got %d and %d') % (self.ndim, other.ndim))
     *         for ax, oax in zip(self.axes[1:], other.axes[1:]):             # <<<<<<<<<<<<<<
     *             if not ax.equals(oax):
     *                 return False
     */
      __pyx_slice__114 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__114)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__114);
      __Pyx_GIVEREF(__pyx_slice__114);
      __pyx_t_5 = __Pyx_PyObject_GetSlice(__pyx_t_1, 1, 0, NULL, NULL, &__pyx_slice__115, 1, 0, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_3 = 0;
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) {
        __pyx_t_1 = __pyx_t_5; __Pyx_INCREF(__pyx_t_1); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_7 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      for (;;) {
        if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_1, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_6); __Pyx_INCREF(__pyx_t_5); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_1, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_5 = __pyx_t_7(__pyx_t_1);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_5))) || (PyList_CheckExact(__pyx_t_5))) {
          PyObject* sequence = __pyx_t_5;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_3);
          #else
          __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          #endif
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_8 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext;
          index = 0; __pyx_t_2 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_2)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          index = 1; __pyx_t_3 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_3)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = NULL;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L7_unpacking_done;
          __pyx_L6_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_9 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L7_unpacking_done:;
        }
        __Pyx_XDECREF_SET(__pyx_v_ax, __pyx_t_2);
        __pyx_t_2 = 0;
        __Pyx_XDECREF_SET(__pyx_v_oax, __pyx_t_3);
        __pyx_t_3 = 0;
      __pyx_slice__115 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__115)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3488; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__115);
      __Pyx_GIVEREF(__pyx_slice__115);

     3489:             if not ax.equals(oax):

        /* "pandas/internals.pyx":3489
     *                                   'got %d and %d') % (self.ndim, other.ndim))
     *         for ax, oax in zip(self.axes[1:], other.axes[1:]):
     *             if not ax.equals(oax):             # <<<<<<<<<<<<<<
     *                 return False
     *         return True
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_ax, __pyx_n_s_equals); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_oax);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_oax);
        __Pyx_GIVEREF(__pyx_v_oax);
        __pyx_t_2 = PyObject_Call(__pyx_t_5, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3489; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_10 = ((!__pyx_t_4) != 0);
        if (__pyx_t_10) {

     3490:                 return False

          /* "pandas/internals.pyx":3490
     *         for ax, oax in zip(self.axes[1:], other.axes[1:]):
     *             if not ax.equals(oax):
     *                 return False             # <<<<<<<<<<<<<<
     *         return True
     *
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(Py_False);
          __pyx_r = Py_False;
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          goto __pyx_L0;
        }
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3491:         return True

      /* "pandas/internals.pyx":3491
     *             if not ax.equals(oax):
     *                 return False
     *         return True             # <<<<<<<<<<<<<<
     *
     *     def rename(self, mapper, axis, copy=False):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_True);
      __pyx_r = Py_True;
      goto __pyx_L0;

     3492:

     3493:     def rename(self, mapper, axis, copy=False):

    /* "pandas/internals.pyx":3493
     *         return True
     *
     *     def rename(self, mapper, axis, copy=False):             # <<<<<<<<<<<<<<
     *         """ generic rename """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_177rename(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12BlockManager_176rename[] = " generic rename ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_177rename = {__Pyx_NAMESTR("rename"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_177rename, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12BlockManager_176rename)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_177rename(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_mapper = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rename (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_mapper,&__pyx_n_s_axis,&__pyx_n_s_copy,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mapper)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("rename", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("rename", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "rename") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_mapper = values[1];
        __pyx_v_axis = values[2];
        __pyx_v_copy = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("rename", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_176rename(__pyx_self, __pyx_v_self, __pyx_v_mapper, __pyx_v_axis, __pyx_v_copy);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_176rename(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_mapper, PyObject *__pyx_v_axis, PyObject *__pyx_v_copy) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rename", 0);

      /* "pandas/internals.pyx":3493
     *         return True
     *
     *     def rename(self, mapper, axis, copy=False):             # <<<<<<<<<<<<<<
     *         """ generic rename """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3493
     *         return True
     *
     *     def rename(self, mapper, axis, copy=False):             # <<<<<<<<<<<<<<
     *         """ generic rename """
     *
     */
      __pyx_tuple__674 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_mapper, __pyx_n_s_axis, __pyx_n_s_copy); if (unlikely(!__pyx_tuple__674)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__674);
      __Pyx_GIVEREF(__pyx_tuple__674);
      __pyx_codeobj__675 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__674, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_rename, 3493, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__675)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3493
     *         return True
     *
     *     def rename(self, mapper, axis, copy=False):             # <<<<<<<<<<<<<<
     *         """ generic rename """
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_177rename, 0, __pyx_n_s_BlockManager_rename, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__675)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__676);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_rename, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__676 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__676)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3493; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__676);
      __Pyx_GIVEREF(__pyx_tuple__676);

     3494:         """ generic rename """

     3495:

     3496:         if axis == 0:

      /* "pandas/internals.pyx":3496
     *         """ generic rename """
     *
     *         if axis == 0:             # <<<<<<<<<<<<<<
     *             return self.rename_items(mapper, copy=copy)
     *         return self.rename_axis(mapper, axis=axis)
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_axis, __pyx_int_0, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3496; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3496; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_2) {

     3497:             return self.rename_items(mapper, copy=copy)

        /* "pandas/internals.pyx":3497
     *
     *         if axis == 0:
     *             return self.rename_items(mapper, copy=copy)             # <<<<<<<<<<<<<<
     *         return self.rename_axis(mapper, axis=axis)
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_rename_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_mapper);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_mapper);
        __Pyx_GIVEREF(__pyx_v_mapper);
        __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3497; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L0;
      }

     3498:         return self.rename_axis(mapper, axis=axis)

      /* "pandas/internals.pyx":3498
     *         if axis == 0:
     *             return self.rename_items(mapper, copy=copy)
     *         return self.rename_axis(mapper, axis=axis)             # <<<<<<<<<<<<<<
     *
     *     def rename_axis(self, mapper, axis=1):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_rename_axis); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_mapper);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_mapper);
      __Pyx_GIVEREF(__pyx_v_mapper);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_axis, __pyx_v_axis) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3498; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     3499:

     3500:     def rename_axis(self, mapper, axis=1):

    /* "pandas/internals.pyx":3500
     *         return self.rename_axis(mapper, axis=axis)
     *
     *     def rename_axis(self, mapper, axis=1):             # <<<<<<<<<<<<<<
     *
     *         index = self.axes[axis]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_179rename_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_179rename_axis = {__Pyx_NAMESTR("rename_axis"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_179rename_axis, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_179rename_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_mapper = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rename_axis (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_mapper,&__pyx_n_s_axis,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)__pyx_int_1));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mapper)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("rename_axis", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "rename_axis") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_mapper = values[1];
        __pyx_v_axis = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("rename_axis", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_178rename_axis(__pyx_self, __pyx_v_self, __pyx_v_mapper, __pyx_v_axis);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_11rename_axis_2generator5(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":3500
     *         return self.rename_axis(mapper, axis=axis)
     *
     *     def rename_axis(self, mapper, axis=1):             # <<<<<<<<<<<<<<
     *
     *         index = self.axes[axis]
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_178rename_axis(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_mapper, PyObject *__pyx_v_axis) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_19_rename_axis *__pyx_cur_scope;
      PyObject *__pyx_v_index = NULL;
      PyObject *__pyx_v_new_axis = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rename_axis", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_19_rename_axis *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_19_rename_axis(__pyx_ptype_6pandas_9internals___pyx_scope_struct_19_rename_axis, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_mapper = __pyx_v_mapper;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_mapper);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_mapper);

      /* "pandas/internals.pyx":3500
     *         return self.rename_axis(mapper, axis=axis)
     *
     *     def rename_axis(self, mapper, axis=1):             # <<<<<<<<<<<<<<
     *
     *         index = self.axes[axis]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_index);
      __Pyx_XDECREF(__pyx_v_new_axis);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3500
     *         return self.rename_axis(mapper, axis=axis)
     *
     *     def rename_axis(self, mapper, axis=1):             # <<<<<<<<<<<<<<
     *
     *         index = self.axes[axis]
     */
      __pyx_tuple__677 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_mapper, __pyx_n_s_axis, __pyx_n_s_index, __pyx_n_s_new_axis, __pyx_n_s_new_axes, __pyx_n_s_x_2, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__677)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__677);
      __Pyx_GIVEREF(__pyx_tuple__677);
      __pyx_codeobj__678 = (PyObject*)__Pyx_PyCode_New(3, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__677, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_rename_axis, 3500, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__678)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3500
     *         return self.rename_axis(mapper, axis=axis)
     *
     *     def rename_axis(self, mapper, axis=1):             # <<<<<<<<<<<<<<
     *
     *         index = self.axes[axis]
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_179rename_axis, 0, __pyx_n_s_BlockManager_rename_axis, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__678)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__679);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_rename_axis, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__679 = PyTuple_Pack(1, ((PyObject *)__pyx_int_1)); if (unlikely(!__pyx_tuple__679)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3500; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__679);
      __Pyx_GIVEREF(__pyx_tuple__679);

    /* "pandas/internals.pyx":3500
     *         return self.rename_axis(mapper, axis=axis)
     *
     *     def rename_axis(self, mapper, axis=1):             # <<<<<<<<<<<<<<
     *
     *         index = self.axes[axis]
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_19_rename_axis {
      PyObject_HEAD
      PyObject *__pyx_v_mapper;
      PyObject *__pyx_v_x;
    };

     3501:

     3502:         index = self.axes[axis]

      /* "pandas/internals.pyx":3502
     *     def rename_axis(self, mapper, axis=1):
     *
     *         index = self.axes[axis]             # <<<<<<<<<<<<<<
     *         if isinstance(index, MultiIndex):
     *             new_axis = MultiIndex.from_tuples(
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3502; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_GetItem(__pyx_t_1, __pyx_v_axis); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3502; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_index = __pyx_t_2;
      __pyx_t_2 = 0;

     3503:         if isinstance(index, MultiIndex):

      /* "pandas/internals.pyx":3503
     *
     *         index = self.axes[axis]
     *         if isinstance(index, MultiIndex):             # <<<<<<<<<<<<<<
     *             new_axis = MultiIndex.from_tuples(
     *                 [tuple(mapper(y) for y in x) for x in index],
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_MultiIndex); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_IsInstance(__pyx_v_index, __pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3503; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = (__pyx_t_3 != 0);
      if (__pyx_t_4) {

     3504:             new_axis = MultiIndex.from_tuples(

        /* "pandas/internals.pyx":3504
     *         index = self.axes[axis]
     *         if isinstance(index, MultiIndex):
     *             new_axis = MultiIndex.from_tuples(             # <<<<<<<<<<<<<<
     *                 [tuple(mapper(y) for y in x) for x in index],
     *                 names=index.names)
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_MultiIndex); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_from_tuples); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

        /* "pandas/internals.pyx":3504
     *         index = self.axes[axis]
     *         if isinstance(index, MultiIndex):
     *             new_axis = MultiIndex.from_tuples(             # <<<<<<<<<<<<<<
     *                 [tuple(mapper(y) for y in x) for x in index],
     *                 names=index.names)
     */
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);

        /* "pandas/internals.pyx":3504
     *         index = self.axes[axis]
     *         if isinstance(index, MultiIndex):
     *             new_axis = MultiIndex.from_tuples(             # <<<<<<<<<<<<<<
     *                 [tuple(mapper(y) for y in x) for x in index],
     *                 names=index.names)
     */
        __pyx_t_8 = PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_new_axis = __pyx_t_8;
        __pyx_t_8 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     3505:                 [tuple(mapper(y) for y in x) for x in index],

    /* "pandas/internals.pyx":3505
     *         if isinstance(index, MultiIndex):
     *             new_axis = MultiIndex.from_tuples(
     *                 [tuple(mapper(y) for y in x) for x in index],             # <<<<<<<<<<<<<<
     *                 names=index.names)
     *         else:
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_11rename_axis_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_20_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_20_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_20_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_20_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_19_rename_axis *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_11rename_axis_2generator5, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename_axis.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_11rename_axis_2generator5(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x)) { __Pyx_RaiseClosureNameError("x"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (PyList_CheckExact(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x)) {
        __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_x; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
        __pyx_t_3 = NULL;
      } else {
        __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_3 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_3 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_3(__pyx_t_1);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_y);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_y, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_mapper)) { __Pyx_RaiseClosureNameError("mapper"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_y);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_cur_scope->__pyx_v_y);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_y);
        __pyx_t_5 = PyObject_Call(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_mapper, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        __Pyx_XGIVEREF(__pyx_t_1);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_1;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_3;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L6_resume_from_yield:;
        __pyx_t_1 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_1);
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

        /* "pandas/internals.pyx":3505
     *         if isinstance(index, MultiIndex):
     *             new_axis = MultiIndex.from_tuples(
     *                 [tuple(mapper(y) for y in x) for x in index],             # <<<<<<<<<<<<<<
     *                 names=index.names)
     *         else:
     */
        __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyList_CheckExact(__pyx_v_index) || PyTuple_CheckExact(__pyx_v_index)) {
          __pyx_t_5 = __pyx_v_index; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_v_index); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_8); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_8); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_8 = __pyx_t_7(__pyx_t_5);
            if (unlikely(!__pyx_t_8)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_8);
          }
          __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_x);
          __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_x, __pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_8);
          __pyx_t_8 = 0;
          __pyx_t_8 = __pyx_pf_6pandas_9internals_12BlockManager_11rename_axis_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_8);
          __pyx_t_8 = 0;
          __pyx_t_8 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_9, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_8))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3505; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

    /* "pandas/internals.pyx":3505
     *         if isinstance(index, MultiIndex):
     *             new_axis = MultiIndex.from_tuples(
     *                 [tuple(mapper(y) for y in x) for x in index],             # <<<<<<<<<<<<<<
     *                 names=index.names)
     *         else:
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_20_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_19_rename_axis *__pyx_outer_scope;
      PyObject *__pyx_v_y;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     3506:                 names=index.names)

        /* "pandas/internals.pyx":3506
     *             new_axis = MultiIndex.from_tuples(
     *                 [tuple(mapper(y) for y in x) for x in index],
     *                 names=index.names)             # <<<<<<<<<<<<<<
     *         else:
     *             new_axis = Index([mapper(x) for x in index], name=index.name)
     */
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_names); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3506; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_names, __pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3504; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

     3507:         else:

     3508:             new_axis = Index([mapper(x) for x in index], name=index.name)

        /* "pandas/internals.pyx":3508
     *                 names=index.names)
     *         else:
     *             new_axis = Index([mapper(x) for x in index], name=index.name)             # <<<<<<<<<<<<<<
     *
     *         if not new_axis.is_unique:
     */
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_Index); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyList_CheckExact(__pyx_v_index) || PyTuple_CheckExact(__pyx_v_index)) {
          __pyx_t_5 = __pyx_v_index; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_v_index); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_7(__pyx_t_5);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_x);
          __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_x, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_cur_scope->__pyx_v_x);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_x);
          __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_x);
          __pyx_t_9 = PyObject_Call(__pyx_cur_scope->__pyx_v_mapper, __pyx_t_1, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_9))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_index, __pyx_n_s_name); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_name, __pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_9 = PyObject_Call(__pyx_t_8, __pyx_t_5, __pyx_t_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3508; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_new_axis = __pyx_t_9;
        __pyx_t_9 = 0;
      }
      __pyx_L3:;

     3509:

     3510:         if not new_axis.is_unique:

      /* "pandas/internals.pyx":3510
     *             new_axis = Index([mapper(x) for x in index], name=index.name)
     *
     *         if not new_axis.is_unique:             # <<<<<<<<<<<<<<
     *             raise AssertionError('New axis must be unique to rename')
     *
     */
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_axis, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3510; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3510; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __pyx_t_3 = ((!__pyx_t_4) != 0);
      if (__pyx_t_3) {

     3511:             raise AssertionError('New axis must be unique to rename')

        /* "pandas/internals.pyx":3511
     *
     *         if not new_axis.is_unique:
     *             raise AssertionError('New axis must be unique to rename')             # <<<<<<<<<<<<<<
     *
     *         new_axes = list(self.axes)
     */
        __pyx_t_9 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__116, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3511; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_Raise(__pyx_t_9, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3511; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":3511
     *
     *         if not new_axis.is_unique:
     *             raise AssertionError('New axis must be unique to rename')             # <<<<<<<<<<<<<<
     *
     *         new_axes = list(self.axes)
     */
      __pyx_tuple__116 = PyTuple_Pack(1, __pyx_kp_s_New_axis_must_be_unique_to_renam); if (unlikely(!__pyx_tuple__116)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3511; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__116);
      __Pyx_GIVEREF(__pyx_tuple__116);

     3512:

     3513:         new_axes = list(self.axes)

      /* "pandas/internals.pyx":3513
     *             raise AssertionError('New axis must be unique to rename')
     *
     *         new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *         new_axes[axis] = new_axis
     *         return self.__class__(self.blocks, new_axes)
     */
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_9);
      __Pyx_GIVEREF(__pyx_t_9);
      __pyx_t_9 = 0;
      __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_2, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3513; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_9);
      __pyx_t_9 = 0;

     3514:         new_axes[axis] = new_axis

      /* "pandas/internals.pyx":3514
     *
     *         new_axes = list(self.axes)
     *         new_axes[axis] = new_axis             # <<<<<<<<<<<<<<
     *         return self.__class__(self.blocks, new_axes)
     *
     */
      if (unlikely(PyObject_SetItem(__pyx_v_new_axes, __pyx_v_axis, __pyx_v_new_axis) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3514; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3515:         return self.__class__(self.blocks, new_axes)

      /* "pandas/internals.pyx":3515
     *         new_axes = list(self.axes)
     *         new_axes[axis] = new_axis
     *         return self.__class__(self.blocks, new_axes)             # <<<<<<<<<<<<<<
     *
     *     def rename_items(self, mapper, copy=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3515; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_9);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3515; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3515; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_t_9, __pyx_t_5, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3515; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3516:

     3517:     def rename_items(self, mapper, copy=True):

    /* "pandas/internals.pyx":3517
     *         return self.__class__(self.blocks, new_axes)
     *
     *     def rename_items(self, mapper, copy=True):             # <<<<<<<<<<<<<<
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_181rename_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_181rename_items = {__Pyx_NAMESTR("rename_items"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_181rename_items, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_181rename_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_mapper = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rename_items (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_mapper,&__pyx_n_s_copy,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_mapper)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("rename_items", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "rename_items") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_mapper = values[1];
        __pyx_v_copy = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("rename_items", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_180rename_items(__pyx_self, __pyx_v_self, __pyx_v_mapper, __pyx_v_copy);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_12rename_items_2generator6(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":3517
     *         return self.__class__(self.blocks, new_axes)
     *
     *     def rename_items(self, mapper, copy=True):             # <<<<<<<<<<<<<<
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_180rename_items(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_mapper, PyObject *__pyx_v_copy) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_21_rename_items *__pyx_cur_scope;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_newb = NULL;
      PyObject *__pyx_v_new_axes = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("rename_items", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_21_rename_items *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_21_rename_items(__pyx_ptype_6pandas_9internals___pyx_scope_struct_21_rename_items, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_mapper = __pyx_v_mapper;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_mapper);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_mapper);

      /* "pandas/internals.pyx":3517
     *         return self.__class__(self.blocks, new_axes)
     *
     *     def rename_items(self, mapper, copy=True):             # <<<<<<<<<<<<<<
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XDECREF(__pyx_v_new_axes);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3517
     *         return self.__class__(self.blocks, new_axes)
     *
     *     def rename_items(self, mapper, copy=True):             # <<<<<<<<<<<<<<
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     */
      __pyx_tuple__680 = PyTuple_Pack(12, __pyx_n_s_self, __pyx_n_s_mapper, __pyx_n_s_copy, __pyx_n_s_items, __pyx_n_s_new_items, __pyx_n_s_new_blocks, __pyx_n_s_block, __pyx_n_s_newb, __pyx_n_s_new_axes, __pyx_n_s_x_2, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__680)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__680);
      __Pyx_GIVEREF(__pyx_tuple__680);
      __pyx_codeobj__681 = (PyObject*)__Pyx_PyCode_New(3, 0, 12, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__680, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_rename_items, 3517, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__681)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3517
     *         return self.__class__(self.blocks, new_axes)
     *
     *     def rename_items(self, mapper, copy=True):             # <<<<<<<<<<<<<<
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_181rename_items, 0, __pyx_n_s_BlockManager_rename_items, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__681)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__682);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_rename_items, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__682 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__682)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3517; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__682);
      __Pyx_GIVEREF(__pyx_tuple__682);

    /* "pandas/internals.pyx":3517
     *         return self.__class__(self.blocks, new_axes)
     *
     *     def rename_items(self, mapper, copy=True):             # <<<<<<<<<<<<<<
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_21_rename_items {
      PyObject_HEAD
      PyObject *__pyx_v_mapper;
      PyObject *__pyx_v_x;
    };

     3518:         if isinstance(self.items, MultiIndex):

      /* "pandas/internals.pyx":3518
     *
     *     def rename_items(self, mapper, copy=True):
     *         if isinstance(self.items, MultiIndex):             # <<<<<<<<<<<<<<
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     *             new_items = MultiIndex.from_tuples(items, names=self.items.names)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3518; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_MultiIndex); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3518; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_IsInstance(__pyx_t_1, __pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3518; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_4 = (__pyx_t_3 != 0);
      if (__pyx_t_4) {

     3519:             items = [tuple(mapper(y) for y in x) for x in self.items]

    /* "pandas/internals.pyx":3519
     *     def rename_items(self, mapper, copy=True):
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]             # <<<<<<<<<<<<<<
     *             new_items = MultiIndex.from_tuples(items, names=self.items.names)
     *         else:
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_12rename_items_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_22_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_22_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_22_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_22_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_21_rename_items *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_12rename_items_2generator6, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.rename_items.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_12rename_items_2generator6(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x)) { __Pyx_RaiseClosureNameError("x"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (PyList_CheckExact(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x)) {
        __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_x; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
        __pyx_t_3 = NULL;
      } else {
        __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_3 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_3 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_3(__pyx_t_1);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_y);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_y, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_mapper)) { __Pyx_RaiseClosureNameError("mapper"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_y);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_cur_scope->__pyx_v_y);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_y);
        __pyx_t_5 = PyObject_Call(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_mapper, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        __Pyx_XGIVEREF(__pyx_t_1);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_1;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_3;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L6_resume_from_yield:;
        __pyx_t_1 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_1);
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

        /* "pandas/internals.pyx":3519
     *     def rename_items(self, mapper, copy=True):
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]             # <<<<<<<<<<<<<<
     *             new_items = MultiIndex.from_tuples(items, names=self.items.names)
     *         else:
     */
        __pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
          __pyx_t_5 = __pyx_t_1; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_7(__pyx_t_5);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_x);
          __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_x, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = __pyx_pf_6pandas_9internals_12BlockManager_12rename_items_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_2, (PyObject*)__pyx_t_1))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3519; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_items = ((PyObject*)__pyx_t_2);
        __pyx_t_2 = 0;

    /* "pandas/internals.pyx":3519
     *     def rename_items(self, mapper, copy=True):
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]             # <<<<<<<<<<<<<<
     *             new_items = MultiIndex.from_tuples(items, names=self.items.names)
     *         else:
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_22_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_21_rename_items *__pyx_outer_scope;
      PyObject *__pyx_v_y;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     3520:             new_items = MultiIndex.from_tuples(items, names=self.items.names)

        /* "pandas/internals.pyx":3520
     *         if isinstance(self.items, MultiIndex):
     *             items = [tuple(mapper(y) for y in x) for x in self.items]
     *             new_items = MultiIndex.from_tuples(items, names=self.items.names)             # <<<<<<<<<<<<<<
     *         else:
     *             items = [mapper(x) for x in self.items]
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_MultiIndex); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_from_tuples); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_names); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_names, __pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_9 = PyObject_Call(__pyx_t_5, __pyx_t_2, __pyx_t_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3520; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_new_items = __pyx_t_9;
        __pyx_t_9 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     3521:         else:

     3522:             items = [mapper(x) for x in self.items]

        /* "pandas/internals.pyx":3522
     *             new_items = MultiIndex.from_tuples(items, names=self.items.names)
     *         else:
     *             items = [mapper(x) for x in self.items]             # <<<<<<<<<<<<<<
     *             new_items = Index(items, name=self.items.name)
     *
     */
        __pyx_t_9 = PyList_New(0); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
          __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_6 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_6 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_7 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_6); __Pyx_INCREF(__pyx_t_1); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_1 = __pyx_t_7(__pyx_t_2);
            if (unlikely(!__pyx_t_1)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_1);
          }
          __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_x);
          __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_x, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_cur_scope->__pyx_v_x);
          PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_cur_scope->__pyx_v_x);
          __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_x);
          __pyx_t_5 = PyObject_Call(__pyx_cur_scope->__pyx_v_mapper, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_9, (PyObject*)__pyx_t_5))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3522; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_v_items = ((PyObject*)__pyx_t_9);
        __pyx_t_9 = 0;

     3523:             new_items = Index(items, name=self.items.name)

        /* "pandas/internals.pyx":3523
     *         else:
     *             items = [mapper(x) for x in self.items]
     *             new_items = Index(items, name=self.items.name)             # <<<<<<<<<<<<<<
     *
     *         new_blocks = []
     */
        __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_Index); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_name); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_name, __pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = PyObject_Call(__pyx_t_9, __pyx_t_2, __pyx_t_5); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3523; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_new_items = __pyx_t_8;
        __pyx_t_8 = 0;
      }
      __pyx_L3:;

     3524:

     3525:         new_blocks = []

      /* "pandas/internals.pyx":3525
     *             new_items = Index(items, name=self.items.name)
     *
     *         new_blocks = []             # <<<<<<<<<<<<<<
     *         for block in self.blocks:
     *             newb = block.copy(deep=copy)
     */
      __pyx_t_8 = PyList_New(0); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3525; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_8);
      __pyx_t_8 = 0;

     3526:         for block in self.blocks:

      /* "pandas/internals.pyx":3526
     *
     *         new_blocks = []
     *         for block in self.blocks:             # <<<<<<<<<<<<<<
     *             newb = block.copy(deep=copy)
     *             newb.set_ref_items(new_items, maybe_rename=True)
     */
      __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      if (PyList_CheckExact(__pyx_t_8) || PyTuple_CheckExact(__pyx_t_8)) {
        __pyx_t_5 = __pyx_t_8; __Pyx_INCREF(__pyx_t_5); __pyx_t_6 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_6 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      for (;;) {
        if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
          if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_8 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_8); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
          if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_6); __Pyx_INCREF(__pyx_t_8); __pyx_t_6++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_6); __pyx_t_6++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_8 = __pyx_t_7(__pyx_t_5);
          if (unlikely(!__pyx_t_8)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3526; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_8);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_8);
        __pyx_t_8 = 0;

     3527:             newb = block.copy(deep=copy)

        /* "pandas/internals.pyx":3527
     *         new_blocks = []
     *         for block in self.blocks:
     *             newb = block.copy(deep=copy)             # <<<<<<<<<<<<<<
     *             newb.set_ref_items(new_items, maybe_rename=True)
     *             new_blocks.append(newb)
     */
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_copy); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3527; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3527; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_deep, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3527; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_9 = PyObject_Call(__pyx_t_8, __pyx_empty_tuple, __pyx_t_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3527; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF_SET(__pyx_v_newb, __pyx_t_9);
        __pyx_t_9 = 0;

     3528:             newb.set_ref_items(new_items, maybe_rename=True)

        /* "pandas/internals.pyx":3528
     *         for block in self.blocks:
     *             newb = block.copy(deep=copy)
     *             newb.set_ref_items(new_items, maybe_rename=True)             # <<<<<<<<<<<<<<
     *             new_blocks.append(newb)
     *         new_axes = list(self.axes)
     */
        __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_newb, __pyx_n_s_set_ref_items); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_new_items);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_items);
        __Pyx_GIVEREF(__pyx_v_new_items);
        __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_maybe_rename, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = PyObject_Call(__pyx_t_9, __pyx_t_2, __pyx_t_8); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3528; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3529:             new_blocks.append(newb)

        /* "pandas/internals.pyx":3529
     *             newb = block.copy(deep=copy)
     *             newb.set_ref_items(new_items, maybe_rename=True)
     *             new_blocks.append(newb)             # <<<<<<<<<<<<<<
     *         new_axes = list(self.axes)
     *         new_axes[0] = new_items
     */
        __pyx_t_10 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_newb); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3529; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3530:         new_axes = list(self.axes)

      /* "pandas/internals.pyx":3530
     *             newb.set_ref_items(new_items, maybe_rename=True)
     *             new_blocks.append(newb)
     *         new_axes = list(self.axes)             # <<<<<<<<<<<<<<
     *         new_axes[0] = new_items
     *         return self.__class__(new_blocks, new_axes)
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3530; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_new_axes = ((PyObject*)__pyx_t_5);
      __pyx_t_5 = 0;

     3531:         new_axes[0] = new_items

      /* "pandas/internals.pyx":3531
     *             new_blocks.append(newb)
     *         new_axes = list(self.axes)
     *         new_axes[0] = new_items             # <<<<<<<<<<<<<<
     *         return self.__class__(new_blocks, new_axes)
     *
     */
      if (unlikely(__Pyx_SetItemInt(__pyx_v_new_axes, 0, __pyx_v_new_items, long, 1, __Pyx_PyInt_From_long, 1, 0, 1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3531; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3532:         return self.__class__(new_blocks, new_axes)

      /* "pandas/internals.pyx":3532
     *         new_axes = list(self.axes)
     *         new_axes[0] = new_items
     *         return self.__class__(new_blocks, new_axes)             # <<<<<<<<<<<<<<
     *
     *     def add_prefix(self, prefix):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3532; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3532; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_new_blocks);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_new_blocks);
      __Pyx_GIVEREF(__pyx_v_new_blocks);
      __Pyx_INCREF(__pyx_v_new_axes);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_new_axes);
      __Pyx_GIVEREF(__pyx_v_new_axes);
      __pyx_t_8 = PyObject_Call(__pyx_t_5, __pyx_t_1, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3532; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_8;
      __pyx_t_8 = 0;
      goto __pyx_L0;

     3533:

     3534:     def add_prefix(self, prefix):

    /* "pandas/internals.pyx":3534
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def add_prefix(self, prefix):             # <<<<<<<<<<<<<<
     *         f = (('%s' % prefix) + '%s').__mod__
     *         return self.rename_items(f)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_183add_prefix(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_183add_prefix = {__Pyx_NAMESTR("add_prefix"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_183add_prefix, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_183add_prefix(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_prefix = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("add_prefix (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_prefix,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_prefix)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("add_prefix", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3534; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "add_prefix") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3534; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_prefix = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("add_prefix", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3534; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.add_prefix", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_182add_prefix(__pyx_self, __pyx_v_self, __pyx_v_prefix);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_182add_prefix(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_prefix) {
      PyObject *__pyx_v_f = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("add_prefix", 0);

      /* "pandas/internals.pyx":3534
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def add_prefix(self, prefix):             # <<<<<<<<<<<<<<
     *         f = (('%s' % prefix) + '%s').__mod__
     *         return self.rename_items(f)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.add_prefix", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_f);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3534
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def add_prefix(self, prefix):             # <<<<<<<<<<<<<<
     *         f = (('%s' % prefix) + '%s').__mod__
     *         return self.rename_items(f)
     */
      __pyx_tuple__683 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_prefix, __pyx_n_s_f); if (unlikely(!__pyx_tuple__683)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3534; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__683);
      __Pyx_GIVEREF(__pyx_tuple__683);

      /* "pandas/internals.pyx":3534
     *         return self.__class__(new_blocks, new_axes)
     *
     *     def add_prefix(self, prefix):             # <<<<<<<<<<<<<<
     *         f = (('%s' % prefix) + '%s').__mod__
     *         return self.rename_items(f)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_183add_prefix, 0, __pyx_n_s_BlockManager_add_prefix, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__684)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3534; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_add_prefix, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3534; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__684 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__683, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_add_prefix, 3534, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__684)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3534; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3535:         f = (('%s' % prefix) + '%s').__mod__

      /* "pandas/internals.pyx":3535
     *
     *     def add_prefix(self, prefix):
     *         f = (('%s' % prefix) + '%s').__mod__             # <<<<<<<<<<<<<<
     *         return self.rename_items(f)
     *
     */
      __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_s_3, __pyx_v_prefix); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3535; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_kp_s_s_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3535; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_mod); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3535; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_f = __pyx_t_1;
      __pyx_t_1 = 0;

     3536:         return self.rename_items(f)

      /* "pandas/internals.pyx":3536
     *     def add_prefix(self, prefix):
     *         f = (('%s' % prefix) + '%s').__mod__
     *         return self.rename_items(f)             # <<<<<<<<<<<<<<
     *
     *     def add_suffix(self, suffix):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_rename_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3536; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3536; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_f);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_f);
      __Pyx_GIVEREF(__pyx_v_f);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3536; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     3537:

     3538:     def add_suffix(self, suffix):

    /* "pandas/internals.pyx":3538
     *         return self.rename_items(f)
     *
     *     def add_suffix(self, suffix):             # <<<<<<<<<<<<<<
     *         f = ('%s' + ('%s' % suffix)).__mod__
     *         return self.rename_items(f)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_185add_suffix(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_185add_suffix = {__Pyx_NAMESTR("add_suffix"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_185add_suffix, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_185add_suffix(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_suffix = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("add_suffix (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_suffix,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_suffix)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("add_suffix", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3538; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "add_suffix") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3538; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_suffix = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("add_suffix", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3538; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.add_suffix", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_184add_suffix(__pyx_self, __pyx_v_self, __pyx_v_suffix);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_184add_suffix(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_suffix) {
      PyObject *__pyx_v_f = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("add_suffix", 0);

      /* "pandas/internals.pyx":3538
     *         return self.rename_items(f)
     *
     *     def add_suffix(self, suffix):             # <<<<<<<<<<<<<<
     *         f = ('%s' + ('%s' % suffix)).__mod__
     *         return self.rename_items(f)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.BlockManager.add_suffix", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_f);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3538
     *         return self.rename_items(f)
     *
     *     def add_suffix(self, suffix):             # <<<<<<<<<<<<<<
     *         f = ('%s' + ('%s' % suffix)).__mod__
     *         return self.rename_items(f)
     */
      __pyx_tuple__685 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_suffix, __pyx_n_s_f); if (unlikely(!__pyx_tuple__685)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__685);
      __Pyx_GIVEREF(__pyx_tuple__685);

      /* "pandas/internals.pyx":3538
     *         return self.rename_items(f)
     *
     *     def add_suffix(self, suffix):             # <<<<<<<<<<<<<<
     *         f = ('%s' + ('%s' % suffix)).__mod__
     *         return self.rename_items(f)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_185add_suffix, 0, __pyx_n_s_BlockManager_add_suffix, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__686)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_add_suffix, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__686 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__685, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_add_suffix, 3538, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__686)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3538; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3539:         f = ('%s' + ('%s' % suffix)).__mod__

      /* "pandas/internals.pyx":3539
     *
     *     def add_suffix(self, suffix):
     *         f = ('%s' + ('%s' % suffix)).__mod__             # <<<<<<<<<<<<<<
     *         return self.rename_items(f)
     *
     */
      __pyx_t_1 = __Pyx_PyString_Format(__pyx_kp_s_s_3, __pyx_v_suffix); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyNumber_Add(__pyx_kp_s_s_3, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_mod); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3539; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_f = __pyx_t_1;
      __pyx_t_1 = 0;

     3540:         return self.rename_items(f)

      /* "pandas/internals.pyx":3540
     *     def add_suffix(self, suffix):
     *         f = ('%s' + ('%s' % suffix)).__mod__
     *         return self.rename_items(f)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_rename_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_f);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_f);
      __Pyx_GIVEREF(__pyx_v_f);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3540; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     3541:

     3542:     @property

      /* "pandas/internals.pyx":3542
     *         return self.rename_items(f)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def block_id_vector(self):
     *         # TODO
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3542; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_block_id_vector, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3543:     def block_id_vector(self):

    /* "pandas/internals.pyx":3543
     *
     *     @property
     *     def block_id_vector(self):             # <<<<<<<<<<<<<<
     *         # TODO
     *         result = np.empty(len(self.items), dtype=int)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_187block_id_vector(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_187block_id_vector = {__Pyx_NAMESTR("block_id_vector"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_187block_id_vector, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_187block_id_vector(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("block_id_vector (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_186block_id_vector(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_186block_id_vector(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_indexer = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("block_id_vector", 0);

      /* "pandas/internals.pyx":3543
     *
     *     @property
     *     def block_id_vector(self):             # <<<<<<<<<<<<<<
     *         # TODO
     *         result = np.empty(len(self.items), dtype=int)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager.block_id_vector", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3543
     *
     *     @property
     *     def block_id_vector(self):             # <<<<<<<<<<<<<<
     *         # TODO
     *         result = np.empty(len(self.items), dtype=int)
     */
      __pyx_tuple__687 = PyTuple_Pack(5, __pyx_n_s_self, __pyx_n_s_result, __pyx_n_s_i, __pyx_n_s_blk, __pyx_n_s_indexer); if (unlikely(!__pyx_tuple__687)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__687);
      __Pyx_GIVEREF(__pyx_tuple__687);

      /* "pandas/internals.pyx":3543
     *
     *     @property
     *     def block_id_vector(self):             # <<<<<<<<<<<<<<
     *         # TODO
     *         result = np.empty(len(self.items), dtype=int)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_187block_id_vector, 0, __pyx_n_s_BlockManager_block_id_vector, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__688)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__688 = (PyObject*)__Pyx_PyCode_New(1, 0, 5, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__687, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_block_id_vector, 3543, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__688)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3543; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3544:         # TODO

     3545:         result = np.empty(len(self.items), dtype=int)

      /* "pandas/internals.pyx":3545
     *     def block_id_vector(self):
     *         # TODO
     *         result = np.empty(len(self.items), dtype=int)             # <<<<<<<<<<<<<<
     *         result.fill(-1)
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, ((PyObject *)((PyObject*)(&PyInt_Type)))) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3545; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_result = __pyx_t_5;
      __pyx_t_5 = 0;

     3546:         result.fill(-1)

      /* "pandas/internals.pyx":3546
     *         # TODO
     *         result = np.empty(len(self.items), dtype=int)
     *         result.fill(-1)             # <<<<<<<<<<<<<<
     *
     *         for i, blk in enumerate(self.blocks):
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_fill); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_tuple__117, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* "pandas/internals.pyx":3546
     *         # TODO
     *         result = np.empty(len(self.items), dtype=int)
     *         result.fill(-1)             # <<<<<<<<<<<<<<
     *
     *         for i, blk in enumerate(self.blocks):
     */
      __pyx_tuple__117 = PyTuple_Pack(1, __pyx_int_neg_1); if (unlikely(!__pyx_tuple__117)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3546; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__117);
      __Pyx_GIVEREF(__pyx_tuple__117);

     3547:

     3548:         for i, blk in enumerate(self.blocks):

      /* "pandas/internals.pyx":3548
     *         result.fill(-1)
     *
     *         for i, blk in enumerate(self.blocks):             # <<<<<<<<<<<<<<
     *             indexer = self.items.get_indexer(blk.items)
     *             if (indexer == -1).any():
     */
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_1 = __pyx_int_0;
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) {
        __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); __pyx_t_3 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_5 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_5);
        __pyx_t_5 = 0;
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
        __pyx_t_5 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3548; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1);
        __pyx_t_1 = __pyx_t_5;
        __pyx_t_5 = 0;

     3549:             indexer = self.items.get_indexer(blk.items)

        /* "pandas/internals.pyx":3549
     *
     *         for i, blk in enumerate(self.blocks):
     *             indexer = self.items.get_indexer(blk.items)             # <<<<<<<<<<<<<<
     *             if (indexer == -1).any():
     *                 raise AssertionError('Block items must be in manager items')
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3549; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_get_indexer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3549; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3549; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3549; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3549; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF_SET(__pyx_v_indexer, __pyx_t_5);
        __pyx_t_5 = 0;

     3550:             if (indexer == -1).any():

        /* "pandas/internals.pyx":3550
     *         for i, blk in enumerate(self.blocks):
     *             indexer = self.items.get_indexer(blk.items)
     *             if (indexer == -1).any():             # <<<<<<<<<<<<<<
     *                 raise AssertionError('Block items must be in manager items')
     *             result.put(indexer, i)
     */
        __pyx_t_5 = PyObject_RichCompare(__pyx_v_indexer, __pyx_int_neg_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_5); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3550; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_any); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3550; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_t_7, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3550; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3550; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__pyx_t_8) {

     3551:                 raise AssertionError('Block items must be in manager items')

          /* "pandas/internals.pyx":3551
     *             indexer = self.items.get_indexer(blk.items)
     *             if (indexer == -1).any():
     *                 raise AssertionError('Block items must be in manager items')             # <<<<<<<<<<<<<<
     *             result.put(indexer, i)
     *
     */
          __pyx_t_5 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__118, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3551; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_Raise(__pyx_t_5, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3551; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }

      /* "pandas/internals.pyx":3551
     *             indexer = self.items.get_indexer(blk.items)
     *             if (indexer == -1).any():
     *                 raise AssertionError('Block items must be in manager items')             # <<<<<<<<<<<<<<
     *             result.put(indexer, i)
     *
     */
      __pyx_tuple__118 = PyTuple_Pack(1, __pyx_kp_s_Block_items_must_be_in_manager_i); if (unlikely(!__pyx_tuple__118)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3551; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__118);
      __Pyx_GIVEREF(__pyx_tuple__118);

     3552:             result.put(indexer, i)

        /* "pandas/internals.pyx":3552
     *             if (indexer == -1).any():
     *                 raise AssertionError('Block items must be in manager items')
     *             result.put(indexer, i)             # <<<<<<<<<<<<<<
     *
     *         if (result < 0).any():
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_put); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3552; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3552; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        __Pyx_INCREF(__pyx_v_i);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_i);
        __Pyx_GIVEREF(__pyx_v_i);
        __pyx_t_2 = PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3552; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3553:

     3554:         if (result < 0).any():

      /* "pandas/internals.pyx":3554
     *             result.put(indexer, i)
     *
     *         if (result < 0).any():             # <<<<<<<<<<<<<<
     *             raise AssertionError('Some items were not in any block')
     *         return result
     */
      __pyx_t_1 = PyObject_RichCompare(__pyx_v_result, __pyx_int_0, Py_LT); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_any); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3554; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__pyx_t_8) {

     3555:             raise AssertionError('Some items were not in any block')

        /* "pandas/internals.pyx":3555
     *
     *         if (result < 0).any():
     *             raise AssertionError('Some items were not in any block')             # <<<<<<<<<<<<<<
     *         return result
     *
     */
        __pyx_t_1 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__119, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3555; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_Raise(__pyx_t_1, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3555; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":3555
     *
     *         if (result < 0).any():
     *             raise AssertionError('Some items were not in any block')             # <<<<<<<<<<<<<<
     *         return result
     *
     */
      __pyx_tuple__119 = PyTuple_Pack(1, __pyx_kp_s_Some_items_were_not_in_any_block); if (unlikely(!__pyx_tuple__119)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3555; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__119);
      __Pyx_GIVEREF(__pyx_tuple__119);

     3556:         return result

      /* "pandas/internals.pyx":3556
     *         if (result < 0).any():
     *             raise AssertionError('Some items were not in any block')
     *         return result             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     3557:

     3558:     @property

      /* "pandas/internals.pyx":3558
     *         return result
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def item_dtypes(self):
     *         result = np.empty(len(self.items), dtype='O')
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3558; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_item_dtypes, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3559:     def item_dtypes(self):

    /* "pandas/internals.pyx":3559
     *
     *     @property
     *     def item_dtypes(self):             # <<<<<<<<<<<<<<
     *         result = np.empty(len(self.items), dtype='O')
     *         mask = np.zeros(len(self.items), dtype=bool)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_189item_dtypes(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_189item_dtypes = {__Pyx_NAMESTR("item_dtypes"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_189item_dtypes, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_189item_dtypes(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("item_dtypes (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_188item_dtypes(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_188item_dtypes(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_v_result = NULL;
      PyObject *__pyx_v_mask = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_blk = NULL;
      PyObject *__pyx_v_indexer = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("item_dtypes", 0);

      /* "pandas/internals.pyx":3559
     *
     *     @property
     *     def item_dtypes(self):             # <<<<<<<<<<<<<<
     *         result = np.empty(len(self.items), dtype='O')
     *         mask = np.zeros(len(self.items), dtype=bool)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.BlockManager.item_dtypes", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_result);
      __Pyx_XDECREF(__pyx_v_mask);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_blk);
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3559
     *
     *     @property
     *     def item_dtypes(self):             # <<<<<<<<<<<<<<
     *         result = np.empty(len(self.items), dtype='O')
     *         mask = np.zeros(len(self.items), dtype=bool)
     */
      __pyx_tuple__689 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_result, __pyx_n_s_mask, __pyx_n_s_i, __pyx_n_s_blk, __pyx_n_s_indexer); if (unlikely(!__pyx_tuple__689)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__689);
      __Pyx_GIVEREF(__pyx_tuple__689);

      /* "pandas/internals.pyx":3559
     *
     *     @property
     *     def item_dtypes(self):             # <<<<<<<<<<<<<<
     *         result = np.empty(len(self.items), dtype='O')
     *         mask = np.zeros(len(self.items), dtype=bool)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_189item_dtypes, 0, __pyx_n_s_BlockManager_item_dtypes, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__690)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__690 = (PyObject*)__Pyx_PyCode_New(1, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__689, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_item_dtypes, 3559, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__690)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3559; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3560:         result = np.empty(len(self.items), dtype='O')

      /* "pandas/internals.pyx":3560
     *     @property
     *     def item_dtypes(self):
     *         result = np.empty(len(self.items), dtype='O')             # <<<<<<<<<<<<<<
     *         mask = np.zeros(len(self.items), dtype=bool)
     *         for i, blk in enumerate(self.blocks):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_n_s_O) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_4, __pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3560; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_result = __pyx_t_5;
      __pyx_t_5 = 0;

     3561:         mask = np.zeros(len(self.items), dtype=bool)

      /* "pandas/internals.pyx":3561
     *     def item_dtypes(self):
     *         result = np.empty(len(self.items), dtype='O')
     *         mask = np.zeros(len(self.items), dtype=bool)             # <<<<<<<<<<<<<<
     *         for i, blk in enumerate(self.blocks):
     *             indexer = self.items.get_indexer(blk.items)
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_zeros); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_dtype, ((PyObject*)&PyBool_Type)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3561; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_mask = __pyx_t_2;
      __pyx_t_2 = 0;

     3562:         for i, blk in enumerate(self.blocks):

      /* "pandas/internals.pyx":3562
     *         result = np.empty(len(self.items), dtype='O')
     *         mask = np.zeros(len(self.items), dtype=bool)
     *         for i, blk in enumerate(self.blocks):             # <<<<<<<<<<<<<<
     *             indexer = self.items.get_indexer(blk.items)
     *             result.put(indexer, blk.dtype.name)
     */
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_2 = __pyx_int_0;
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyList_CheckExact(__pyx_t_5) || PyTuple_CheckExact(__pyx_t_5)) {
        __pyx_t_4 = __pyx_t_5; __Pyx_INCREF(__pyx_t_4); __pyx_t_3 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_5 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_v_blk, __pyx_t_5);
        __pyx_t_5 = 0;
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_2);
        __pyx_t_5 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3562; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2);
        __pyx_t_2 = __pyx_t_5;
        __pyx_t_5 = 0;

     3563:             indexer = self.items.get_indexer(blk.items)

        /* "pandas/internals.pyx":3563
     *         mask = np.zeros(len(self.items), dtype=bool)
     *         for i, blk in enumerate(self.blocks):
     *             indexer = self.items.get_indexer(blk.items)             # <<<<<<<<<<<<<<
     *             result.put(indexer, blk.dtype.name)
     *             mask.put(indexer, 1)
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3563; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_get_indexer); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3563; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3563; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3563; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3563; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF_SET(__pyx_v_indexer, __pyx_t_5);
        __pyx_t_5 = 0;

     3564:             result.put(indexer, blk.dtype.name)

        /* "pandas/internals.pyx":3564
     *         for i, blk in enumerate(self.blocks):
     *             indexer = self.items.get_indexer(blk.items)
     *             result.put(indexer, blk.dtype.name)             # <<<<<<<<<<<<<<
     *             mask.put(indexer, 1)
     *         if not (mask.all()):
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_result, __pyx_n_s_put); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3564; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_blk, __pyx_n_s_dtype); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3564; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3564; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3564; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_7, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3564; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3565:             mask.put(indexer, 1)

        /* "pandas/internals.pyx":3565
     *             indexer = self.items.get_indexer(blk.items)
     *             result.put(indexer, blk.dtype.name)
     *             mask.put(indexer, 1)             # <<<<<<<<<<<<<<
     *         if not (mask.all()):
     *             raise AssertionError('Some items were not in any block')
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_mask, __pyx_n_s_put); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3565; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3565; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_indexer);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_indexer);
        __Pyx_GIVEREF(__pyx_v_indexer);
        __Pyx_INCREF(__pyx_int_1);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_int_1);
        __Pyx_GIVEREF(__pyx_int_1);
        __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3565; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3566:         if not (mask.all()):

      /* "pandas/internals.pyx":3566
     *             result.put(indexer, blk.dtype.name)
     *             mask.put(indexer, 1)
     *         if not (mask.all()):             # <<<<<<<<<<<<<<
     *             raise AssertionError('Some items were not in any block')
     *         return result
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_mask, __pyx_n_s_all); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3566; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3566; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3566; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_9 = ((!__pyx_t_8) != 0);
      if (__pyx_t_9) {

     3567:             raise AssertionError('Some items were not in any block')

        /* "pandas/internals.pyx":3567
     *             mask.put(indexer, 1)
     *         if not (mask.all()):
     *             raise AssertionError('Some items were not in any block')             # <<<<<<<<<<<<<<
     *         return result
     *
     */
        __pyx_t_4 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__120, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3567; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_Raise(__pyx_t_4, 0, 0, 0);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3567; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

      /* "pandas/internals.pyx":3567
     *             mask.put(indexer, 1)
     *         if not (mask.all()):
     *             raise AssertionError('Some items were not in any block')             # <<<<<<<<<<<<<<
     *         return result
     *
     */
      __pyx_tuple__120 = PyTuple_Pack(1, __pyx_kp_s_Some_items_were_not_in_any_block); if (unlikely(!__pyx_tuple__120)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3567; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__120);
      __Pyx_GIVEREF(__pyx_tuple__120);

     3568:         return result

      /* "pandas/internals.pyx":3568
     *         if not (mask.all()):
     *             raise AssertionError('Some items were not in any block')
     *         return result             # <<<<<<<<<<<<<<
     *
     *     def equals(self, other):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_result);
      __pyx_r = __pyx_v_result;
      goto __pyx_L0;

     3569:

     3570:     def equals(self, other):

    /* "pandas/internals.pyx":3570
     *         return result
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_191equals(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12BlockManager_191equals = {__Pyx_NAMESTR("equals"), (PyCFunction)__pyx_pw_6pandas_9internals_12BlockManager_191equals, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12BlockManager_191equals(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_other = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("equals (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_other,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_other)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("equals", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3570; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "equals") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3570; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_other = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("equals", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3570; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.equals", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12BlockManager_190equals(__pyx_self, __pyx_v_self, __pyx_v_other);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_6equals_2generator7(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":3570
     *         return result
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_190equals(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_other) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_23_equals *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("equals", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_23_equals *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_23_equals(__pyx_ptype_6pandas_9internals___pyx_scope_struct_23_equals, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_self = __pyx_v_self;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_self);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_self);
      __pyx_cur_scope->__pyx_v_other = __pyx_v_other;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_other);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_other);

      /* "pandas/internals.pyx":3570
     *         return result
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.BlockManager.equals", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3570
     *         return result
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):
     */
      __pyx_tuple__691 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_other, __pyx_n_s_self_axes, __pyx_n_s_other_axes, __pyx_n_s_genexpr, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__691)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3570; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__691);
      __Pyx_GIVEREF(__pyx_tuple__691);

      /* "pandas/internals.pyx":3570
     *         return result
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12BlockManager_191equals, 0, __pyx_n_s_BlockManager_equals, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__692)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3570; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_equals, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3570; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__692 = (PyObject*)__Pyx_PyCode_New(2, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__691, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_equals, 3570, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__692)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3570; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":3570
     *         return result
     *
     *     def equals(self, other):             # <<<<<<<<<<<<<<
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_23_equals {
      PyObject_HEAD
      PyObject *__pyx_v_other;
      PyObject *__pyx_v_other_axes;
      PyObject *__pyx_v_self;
      PyObject *__pyx_v_self_axes;
    };

     3571:         self_axes, other_axes = self.axes, other.axes

      /* "pandas/internals.pyx":3571
     *
     *     def equals(self, other):
     *         self_axes, other_axes = self.axes, other.axes             # <<<<<<<<<<<<<<
     *         if len(self_axes) != len(other_axes):
     *            return False
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3571; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_other, __pyx_n_s_axes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3571; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_cur_scope->__pyx_v_self_axes = __pyx_t_1;
      __pyx_t_1 = 0;
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_cur_scope->__pyx_v_other_axes = __pyx_t_2;
      __pyx_t_2 = 0;

     3572:         if len(self_axes) != len(other_axes):

      /* "pandas/internals.pyx":3572
     *     def equals(self, other):
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):             # <<<<<<<<<<<<<<
     *            return False
     *         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):
     */
      __pyx_t_2 = __pyx_cur_scope->__pyx_v_self_axes;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3572; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __pyx_cur_scope->__pyx_v_other_axes;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_4 = PyObject_Length(__pyx_t_2); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3572; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_5 = ((__pyx_t_3 != __pyx_t_4) != 0);
      if (__pyx_t_5) {

     3573:            return False

        /* "pandas/internals.pyx":3573
     *         self_axes, other_axes = self.axes, other.axes
     *         if len(self_axes) != len(other_axes):
     *            return False             # <<<<<<<<<<<<<<
     *         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):
     *             return False
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_False);
        __pyx_r = Py_False;
        goto __pyx_L0;
      }

     3574:         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):

    /* "pandas/internals.pyx":3574
     *         if len(self_axes) != len(other_axes):
     *            return False
     *         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):             # <<<<<<<<<<<<<<
     *             return False
     *         self._consolidate_inplace()
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_6equals_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_24_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_24_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_24_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_24_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_23_equals *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_6equals_2generator7, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.equals.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_6equals_2generator7(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self_axes)) { __Pyx_RaiseClosureNameError("self_axes"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_other_axes)) { __Pyx_RaiseClosureNameError("other_axes"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self_axes);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_outer_scope->__pyx_v_self_axes);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self_axes);
      __Pyx_INCREF(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_other_axes);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_cur_scope->__pyx_outer_scope->__pyx_v_other_axes);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_other_axes);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
        __pyx_t_2 = __pyx_t_3; __Pyx_INCREF(__pyx_t_2); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_5(__pyx_t_2);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
          PyObject* sequence = __pyx_t_3;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_6);
          #else
          __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          #endif
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_7 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
          index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_1);
          index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_6);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L7_unpacking_done;
          __pyx_L6_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L7_unpacking_done:;
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_ax1);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_ax1, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_ax2);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_ax2, __pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_6);
        __pyx_t_6 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_ax1, __pyx_n_s_equals); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_ax2);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_cur_scope->__pyx_v_ax2);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_ax2);
        __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        __Pyx_XGIVEREF(__pyx_t_2);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_4;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_5;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L8_resume_from_yield:;
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_2);
        __pyx_t_4 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_5 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }
    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_6equals_5generator8(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

      /* "pandas/internals.pyx":3574
     *         if len(self_axes) != len(other_axes):
     *            return False
     *         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):             # <<<<<<<<<<<<<<
     *             return False
     *         self._consolidate_inplace()
     */
      __pyx_t_2 = __pyx_pf_6pandas_9internals_12BlockManager_6equals_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_builtin_all, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_5 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3574; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_6 = ((!__pyx_t_5) != 0);
      if (__pyx_t_6) {

    /* "pandas/internals.pyx":3574
     *         if len(self_axes) != len(other_axes):
     *            return False
     *         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):             # <<<<<<<<<<<<<<
     *             return False
     *         self._consolidate_inplace()
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_24_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_23_equals *__pyx_outer_scope;
      PyObject *__pyx_v_ax1;
      PyObject *__pyx_v_ax2;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     3575:             return False

        /* "pandas/internals.pyx":3575
     *            return False
     *         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):
     *             return False             # <<<<<<<<<<<<<<
     *         self._consolidate_inplace()
     *         other._consolidate_inplace()
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_False);
        __pyx_r = Py_False;
        goto __pyx_L0;
      }

     3576:         self._consolidate_inplace()

      /* "pandas/internals.pyx":3576
     *         if not all (ax1.equals(ax2) for ax1, ax2 in zip(self_axes, other_axes)):
     *             return False
     *         self._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         other._consolidate_inplace()
     *         return all(block.equals(oblock) for block, oblock in
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_self, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3576; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3576; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3577:         other._consolidate_inplace()

      /* "pandas/internals.pyx":3577
     *             return False
     *         self._consolidate_inplace()
     *         other._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return all(block.equals(oblock) for block, oblock in
     *                    zip(self.blocks, other.blocks))
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_other, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3577; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3577; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3578:         return all(block.equals(oblock) for block, oblock in

    /* "pandas/internals.pyx":3578
     *         self._consolidate_inplace()
     *         other._consolidate_inplace()
     *         return all(block.equals(oblock) for block, oblock in             # <<<<<<<<<<<<<<
     *                    zip(self.blocks, other.blocks))
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_12BlockManager_6equals_3genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_25_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_25_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_25_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_25_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_23_equals *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_12BlockManager_6equals_5generator8, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.BlockManager.equals.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_12BlockManager_6equals_5generator8(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":3578
     *         self._consolidate_inplace()
     *         other._consolidate_inplace()
     *         return all(block.equals(oblock) for block, oblock in             # <<<<<<<<<<<<<<
     *                    zip(self.blocks, other.blocks))
     *
     */
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_block);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_block, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_oblock);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_oblock, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_block, __pyx_n_s_equals); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_cur_scope->__pyx_v_oblock);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_v_oblock);
        __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_oblock);
        __pyx_t_1 = PyObject_Call(__pyx_t_3, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        __Pyx_XGIVEREF(__pyx_t_4);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_4;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_5;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_6;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L8_resume_from_yield:;
        __pyx_t_4 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_4);
        __pyx_t_5 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_6 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

      /* "pandas/internals.pyx":3578
     *         self._consolidate_inplace()
     *         other._consolidate_inplace()
     *         return all(block.equals(oblock) for block, oblock in             # <<<<<<<<<<<<<<
     *                    zip(self.blocks, other.blocks))
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = __pyx_pf_6pandas_9internals_12BlockManager_6equals_3genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_builtin_all, __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

    /* "pandas/internals.pyx":3578
     *         self._consolidate_inplace()
     *         other._consolidate_inplace()
     *         return all(block.equals(oblock) for block, oblock in             # <<<<<<<<<<<<<<
     *                    zip(self.blocks, other.blocks))
     *
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_25_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_23_equals *__pyx_outer_scope;
      PyObject *__pyx_v_block;
      PyObject *__pyx_v_oblock;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     3579:                    zip(self.blocks, other.blocks))

      /* "pandas/internals.pyx":3579
     *         other._consolidate_inplace()
     *         return all(block.equals(oblock) for block, oblock in
     *                    zip(self.blocks, other.blocks))             # <<<<<<<<<<<<<<
     *
     * class SingleBlockManager(BlockManager):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self)) { __Pyx_RaiseClosureNameError("self"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_other)) { __Pyx_RaiseClosureNameError("other"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_other, __pyx_n_s_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_2 = 0;
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
        __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3579; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
          PyObject* sequence = __pyx_t_3;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_2 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_1);
          __Pyx_INCREF(__pyx_t_2);
          #else
          __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __pyx_t_2 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          #endif
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_7 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
          index = 0; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_1);
          index = 1; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L6_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L7_unpacking_done;
          __pyx_L6_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3578; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L7_unpacking_done:;
        }

     3580:

     3581: class SingleBlockManager(BlockManager):

      /* "pandas/internals.pyx":3581
     *                    zip(self.blocks, other.blocks))
     *
     * class SingleBlockManager(BlockManager):             # <<<<<<<<<<<<<<
     *
     *     """ manage a single block with """
     */
      __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_BlockManager); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_CalculateMetaclass(NULL, __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = __Pyx_Py3MetaclassPrepare(__pyx_t_2, __pyx_t_1, __pyx_n_s_SingleBlockManager, __pyx_n_s_SingleBlockManager, (PyObject *) NULL, __pyx_n_s_pandas_internals, __pyx_kp_s_manage_a_single_block_with); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);

      /* "pandas/internals.pyx":3581
     *                    zip(self.blocks, other.blocks))
     *
     * class SingleBlockManager(BlockManager):             # <<<<<<<<<<<<<<
     *
     *     """ manage a single block with """
     */
      __pyx_t_5 = __Pyx_Py3ClassCreate(__pyx_t_2, __pyx_n_s_SingleBlockManager, __pyx_t_1, __pyx_t_3, NULL, 0, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_SingleBlockManager, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3581; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3582:

     3583:     """ manage a single block with """

     3584:     ndim = 1

      /* "pandas/internals.pyx":3584
     *
     *     """ manage a single block with """
     *     ndim = 1             # <<<<<<<<<<<<<<
     *     _is_consolidated = True
     *     _known_consolidated = True
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ndim, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3584; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3585:     _is_consolidated = True

      /* "pandas/internals.pyx":3585
     *     """ manage a single block with """
     *     ndim = 1
     *     _is_consolidated = True             # <<<<<<<<<<<<<<
     *     _known_consolidated = True
     *     __slots__ = ['axes', 'blocks', '_block',
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_consolidated, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3585; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3586:     _known_consolidated = True

      /* "pandas/internals.pyx":3586
     *     ndim = 1
     *     _is_consolidated = True
     *     _known_consolidated = True             # <<<<<<<<<<<<<<
     *     __slots__ = ['axes', 'blocks', '_block',
     *                  '_values', '_shape', '_has_sparse']
     */
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_known_consolidated, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3586; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3587:     __slots__ = ['axes', 'blocks', '_block',

      /* "pandas/internals.pyx":3587
     *     _is_consolidated = True
     *     _known_consolidated = True
     *     __slots__ = ['axes', 'blocks', '_block',             # <<<<<<<<<<<<<<
     *                  '_values', '_shape', '_has_sparse']
     *
     */
      __pyx_t_5 = PyList_New(6); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_n_s_axes);
      PyList_SET_ITEM(__pyx_t_5, 0, __pyx_n_s_axes);
      __Pyx_GIVEREF(__pyx_n_s_axes);
      __Pyx_INCREF(__pyx_n_s_blocks);
      PyList_SET_ITEM(__pyx_t_5, 1, __pyx_n_s_blocks);
      __Pyx_GIVEREF(__pyx_n_s_blocks);
      __Pyx_INCREF(__pyx_n_s_block_2);
      PyList_SET_ITEM(__pyx_t_5, 2, __pyx_n_s_block_2);
      __Pyx_GIVEREF(__pyx_n_s_block_2);
      __Pyx_INCREF(__pyx_n_s_values_2);
      PyList_SET_ITEM(__pyx_t_5, 3, __pyx_n_s_values_2);
      __Pyx_GIVEREF(__pyx_n_s_values_2);
      __Pyx_INCREF(__pyx_n_s_shape_2);
      PyList_SET_ITEM(__pyx_t_5, 4, __pyx_n_s_shape_2);
      __Pyx_GIVEREF(__pyx_n_s_shape_2);
      __Pyx_INCREF(__pyx_n_s_has_sparse);
      PyList_SET_ITEM(__pyx_t_5, 5, __pyx_n_s_has_sparse);
      __Pyx_GIVEREF(__pyx_n_s_has_sparse);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_slots, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3587; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3588:                  '_values', '_shape', '_has_sparse']

     3589:

     3590:     def __init__(self, block, axis, do_integrity_check=False, fastpath=True):

    /* "pandas/internals.pyx":3590
     *                  '_values', '_shape', '_has_sparse']
     *
     *     def __init__(self, block, axis, do_integrity_check=False, fastpath=True):             # <<<<<<<<<<<<<<
     *
     *         if isinstance(axis, list):
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_1__init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_1__init__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_1__init__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_block = 0;
      PyObject *__pyx_v_axis = 0;
      CYTHON_UNUSED PyObject *__pyx_v_do_integrity_check = 0;
      PyObject *__pyx_v_fastpath = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__ (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_block,&__pyx_n_s_axis,&__pyx_n_s_do_integrity_check,&__pyx_n_s_fastpath,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_False));
        values[4] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_block)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_do_integrity_check);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fastpath);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_block = values[1];
        __pyx_v_axis = values[2];
        __pyx_v_do_integrity_check = values[3];
        __pyx_v_fastpath = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("__init__", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager___init__(__pyx_self, __pyx_v_self, __pyx_v_block, __pyx_v_axis, __pyx_v_do_integrity_check, __pyx_v_fastpath);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager___init__(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_block, PyObject *__pyx_v_axis, CYTHON_UNUSED PyObject *__pyx_v_do_integrity_check, PyObject *__pyx_v_fastpath) {
      PyObject *__pyx_v_dtype = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("__init__", 0);
      __Pyx_INCREF(__pyx_v_block);
      __Pyx_INCREF(__pyx_v_axis);

      /* "pandas/internals.pyx":3590
     *                  '_values', '_shape', '_has_sparse']
     *
     *     def __init__(self, block, axis, do_integrity_check=False, fastpath=True):             # <<<<<<<<<<<<<<
     *
     *         if isinstance(axis, list):
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_axis);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3590
     *                  '_values', '_shape', '_has_sparse']
     *
     *     def __init__(self, block, axis, do_integrity_check=False, fastpath=True):             # <<<<<<<<<<<<<<
     *
     *         if isinstance(axis, list):
     */
      __pyx_tuple__693 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_block, __pyx_n_s_axis, __pyx_n_s_do_integrity_check, __pyx_n_s_fastpath, __pyx_n_s_dtype, __pyx_n_s_b); if (unlikely(!__pyx_tuple__693)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__693);
      __Pyx_GIVEREF(__pyx_tuple__693);
      __pyx_codeobj__694 = (PyObject*)__Pyx_PyCode_New(5, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__693, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_init, 3590, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__694)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3590
     *                  '_values', '_shape', '_has_sparse']
     *
     *     def __init__(self, block, axis, do_integrity_check=False, fastpath=True):             # <<<<<<<<<<<<<<
     *
     *         if isinstance(axis, list):
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_1__init__, 0, __pyx_n_s_SingleBlockManager___init, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__694)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__695);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_init, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__695 = PyTuple_Pack(2, ((PyObject *)Py_False), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__695)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3590; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__695);
      __Pyx_GIVEREF(__pyx_tuple__695);

     3591:

     3592:         if isinstance(axis, list):

      /* "pandas/internals.pyx":3592
     *     def __init__(self, block, axis, do_integrity_check=False, fastpath=True):
     *
     *         if isinstance(axis, list):             # <<<<<<<<<<<<<<
     *             if len(axis) != 1:
     *                 raise ValueError(
     */
      __pyx_t_1 = PyList_Check(__pyx_v_axis);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     3593:             if len(axis) != 1:

        /* "pandas/internals.pyx":3593
     *
     *         if isinstance(axis, list):
     *             if len(axis) != 1:             # <<<<<<<<<<<<<<
     *                 raise ValueError(
     *                     "cannot create SingleBlockManager with more than 1 axis")
     */
        __pyx_t_3 = PyObject_Length(__pyx_v_axis); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3593; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = ((__pyx_t_3 != 1) != 0);
        if (__pyx_t_2) {

     3594:                 raise ValueError(

          /* "pandas/internals.pyx":3594
     *         if isinstance(axis, list):
     *             if len(axis) != 1:
     *                 raise ValueError(             # <<<<<<<<<<<<<<
     *                     "cannot create SingleBlockManager with more than 1 axis")
     *             axis = axis[0]
     */
          __pyx_t_4 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__121, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_Raise(__pyx_t_4, 0, 0, 0);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }

      /* "pandas/internals.pyx":3594
     *         if isinstance(axis, list):
     *             if len(axis) != 1:
     *                 raise ValueError(             # <<<<<<<<<<<<<<
     *                     "cannot create SingleBlockManager with more than 1 axis")
     *             axis = axis[0]
     */
      __pyx_tuple__121 = PyTuple_Pack(1, __pyx_kp_s_cannot_create_SingleBlockManager); if (unlikely(!__pyx_tuple__121)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3594; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__121);
      __Pyx_GIVEREF(__pyx_tuple__121);

     3595:                     "cannot create SingleBlockManager with more than 1 axis")

     3596:             axis = axis[0]

        /* "pandas/internals.pyx":3596
     *                 raise ValueError(
     *                     "cannot create SingleBlockManager with more than 1 axis")
     *             axis = axis[0]             # <<<<<<<<<<<<<<
     *
     *         # passed from constructor, single block, single axis
     */
        __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_axis, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3596; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF_SET(__pyx_v_axis, __pyx_t_4);
        __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     3597:

     3598:         # passed from constructor, single block, single axis

     3599:         if fastpath:

      /* "pandas/internals.pyx":3599
     *
     *         # passed from constructor, single block, single axis
     *         if fastpath:             # <<<<<<<<<<<<<<
     *             self.axes = [axis]
     *             if isinstance(block, list):
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_fastpath); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3599; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     3600:             self.axes = [axis]

        /* "pandas/internals.pyx":3600
     *         # passed from constructor, single block, single axis
     *         if fastpath:
     *             self.axes = [axis]             # <<<<<<<<<<<<<<
     *             if isinstance(block, list):
     *
     */
        __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_axis);
        PyList_SET_ITEM(__pyx_t_4, 0, __pyx_v_axis);
        __Pyx_GIVEREF(__pyx_v_axis);
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_axes, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3600; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3601:             if isinstance(block, list):

        /* "pandas/internals.pyx":3601
     *         if fastpath:
     *             self.axes = [axis]
     *             if isinstance(block, list):             # <<<<<<<<<<<<<<
     *
     *                 # empty block
     */
        __pyx_t_2 = PyList_Check(__pyx_v_block);
        __pyx_t_1 = (__pyx_t_2 != 0);
        if (__pyx_t_1) {

     3602:

     3603:                 # empty block

     3604:                 if len(block) == 0:

          /* "pandas/internals.pyx":3604
     *
     *                 # empty block
     *                 if len(block) == 0:             # <<<<<<<<<<<<<<
     *                     block = [np.array([])]
     *                 elif len(block) != 1:
     */
          __pyx_t_3 = PyObject_Length(__pyx_v_block); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3604; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = ((__pyx_t_3 == 0) != 0);
          if (__pyx_t_1) {

     3605:                     block = [np.array([])]

            /* "pandas/internals.pyx":3605
     *                 # empty block
     *                 if len(block) == 0:
     *                     block = [np.array([])]             # <<<<<<<<<<<<<<
     *                 elif len(block) != 1:
     *                     raise ValueError('Cannot create SingleBlockManager with '
     */
            __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_array); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_4);
            __pyx_t_4 = 0;
            __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3605; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            PyList_SET_ITEM(__pyx_t_6, 0, __pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_4);
            __pyx_t_4 = 0;
            __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_6);
            __pyx_t_6 = 0;
            goto __pyx_L7;
          }

     3606:                 elif len(block) != 1:

          /* "pandas/internals.pyx":3606
     *                 if len(block) == 0:
     *                     block = [np.array([])]
     *                 elif len(block) != 1:             # <<<<<<<<<<<<<<
     *                     raise ValueError('Cannot create SingleBlockManager with '
     *                                      'more than 1 block')
     */
          __pyx_t_3 = PyObject_Length(__pyx_v_block); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3606; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = ((__pyx_t_3 != 1) != 0);
          if (__pyx_t_1) {

     3607:                     raise ValueError('Cannot create SingleBlockManager with '

            /* "pandas/internals.pyx":3607
     *                     block = [np.array([])]
     *                 elif len(block) != 1:
     *                     raise ValueError('Cannot create SingleBlockManager with '             # <<<<<<<<<<<<<<
     *                                      'more than 1 block')
     *                 block = block[0]
     */
            __pyx_t_6 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__122, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_Raise(__pyx_t_6, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          __pyx_L7:;

      /* "pandas/internals.pyx":3607
     *                     block = [np.array([])]
     *                 elif len(block) != 1:
     *                     raise ValueError('Cannot create SingleBlockManager with '             # <<<<<<<<<<<<<<
     *                                      'more than 1 block')
     *                 block = block[0]
     */
      __pyx_tuple__122 = PyTuple_Pack(1, __pyx_kp_s_Cannot_create_SingleBlockManager); if (unlikely(!__pyx_tuple__122)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3607; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__122);
      __Pyx_GIVEREF(__pyx_tuple__122);

     3608:                                      'more than 1 block')

     3609:                 block = block[0]

          /* "pandas/internals.pyx":3609
     *                     raise ValueError('Cannot create SingleBlockManager with '
     *                                      'more than 1 block')
     *                 block = block[0]             # <<<<<<<<<<<<<<
     *             if not isinstance(block, Block):
     *                 block = make_block(block, axis, axis, ndim=1, fastpath=True)
     */
          __pyx_t_6 = __Pyx_GetItemInt(__pyx_v_block, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_6 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3609; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L6;
        }
        __pyx_L6:;

     3610:             if not isinstance(block, Block):

        /* "pandas/internals.pyx":3610
     *                                      'more than 1 block')
     *                 block = block[0]
     *             if not isinstance(block, Block):             # <<<<<<<<<<<<<<
     *                 block = make_block(block, axis, axis, ndim=1, fastpath=True)
     *
     */
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3610; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_1 = PyObject_IsInstance(__pyx_v_block, __pyx_t_6); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3610; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_2 = ((!(__pyx_t_1 != 0)) != 0);
        if (__pyx_t_2) {

     3611:                 block = make_block(block, axis, axis, ndim=1, fastpath=True)

          /* "pandas/internals.pyx":3611
     *                 block = block[0]
     *             if not isinstance(block, Block):
     *                 block = make_block(block, axis, axis, ndim=1, fastpath=True)             # <<<<<<<<<<<<<<
     *
     *         else:
     */
          __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_block);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_block);
          __Pyx_GIVEREF(__pyx_v_block);
          __Pyx_INCREF(__pyx_v_axis);
          PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_axis);
          __Pyx_GIVEREF(__pyx_v_axis);
          __Pyx_INCREF(__pyx_v_axis);
          PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_axis);
          __Pyx_GIVEREF(__pyx_v_axis);
          __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_ndim, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_7 = PyObject_Call(__pyx_t_6, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3611; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_7);
          __pyx_t_7 = 0;
          goto __pyx_L8;
        }
        __pyx_L8:;
        goto __pyx_L5;
      }
      /*else*/ {

     3612:

     3613:         else:

     3614:

     3615:             self.axes = [_ensure_index(axis)]

        /* "pandas/internals.pyx":3615
     *         else:
     *
     *             self.axes = [_ensure_index(axis)]             # <<<<<<<<<<<<<<
     *
     *             # create the block here
     */
        __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_axis);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_axis);
        __Pyx_GIVEREF(__pyx_v_axis);
        __pyx_t_4 = PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyList_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyList_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_axes, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3615; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3616:

     3617:             # create the block here

     3618:             if isinstance(block, list):

        /* "pandas/internals.pyx":3618
     *
     *             # create the block here
     *             if isinstance(block, list):             # <<<<<<<<<<<<<<
     *
     *                 # provide consolidation to the interleaved_dtype
     */
        __pyx_t_2 = PyList_Check(__pyx_v_block);
        __pyx_t_1 = (__pyx_t_2 != 0);
        if (__pyx_t_1) {

     3619:

     3620:                 # provide consolidation to the interleaved_dtype

     3621:                 if len(block) > 1:

          /* "pandas/internals.pyx":3621
     *
     *                 # provide consolidation to the interleaved_dtype
     *                 if len(block) > 1:             # <<<<<<<<<<<<<<
     *                     dtype = _interleaved_dtype(block)
     *                     block = [b.astype(dtype) for b in block]
     */
          __pyx_t_3 = PyObject_Length(__pyx_v_block); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3621; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = ((__pyx_t_3 > 1) != 0);
          if (__pyx_t_1) {

     3622:                     dtype = _interleaved_dtype(block)

            /* "pandas/internals.pyx":3622
     *                 # provide consolidation to the interleaved_dtype
     *                 if len(block) > 1:
     *                     dtype = _interleaved_dtype(block)             # <<<<<<<<<<<<<<
     *                     block = [b.astype(dtype) for b in block]
     *                     block = _consolidate(block, axis)
     */
            __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_interleaved_dtype); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_INCREF(__pyx_v_block);
            PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_block);
            __Pyx_GIVEREF(__pyx_v_block);
            __pyx_t_7 = PyObject_Call(__pyx_t_5, __pyx_t_4, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3622; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_v_dtype = __pyx_t_7;
            __pyx_t_7 = 0;

     3623:                     block = [b.astype(dtype) for b in block]

            /* "pandas/internals.pyx":3623
     *                 if len(block) > 1:
     *                     dtype = _interleaved_dtype(block)
     *                     block = [b.astype(dtype) for b in block]             # <<<<<<<<<<<<<<
     *                     block = _consolidate(block, axis)
     *
     */
            __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            if (PyList_CheckExact(__pyx_v_block) || PyTuple_CheckExact(__pyx_v_block)) {
              __pyx_t_4 = __pyx_v_block; __Pyx_INCREF(__pyx_t_4); __pyx_t_3 = 0;
              __pyx_t_8 = NULL;
            } else {
              __pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_4);
              __pyx_t_8 = Py_TYPE(__pyx_t_4)->tp_iternext;
            }
            for (;;) {
              if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_4)) {
                if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_4)) {
                if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
                #if CYTHON_COMPILING_IN_CPYTHON
                __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_5); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #else
                __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                #endif
              } else {
                __pyx_t_5 = __pyx_t_8(__pyx_t_4);
                if (unlikely(!__pyx_t_5)) {
                  PyObject* exc_type = PyErr_Occurred();
                  if (exc_type) {
                    if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                    else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                  }
                  break;
                }
                __Pyx_GOTREF(__pyx_t_5);
              }
              __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_5);
              __pyx_t_5 = 0;
              __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_astype); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_5);
              __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_INCREF(__pyx_v_dtype);
              PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_dtype);
              __Pyx_GIVEREF(__pyx_v_dtype);
              __pyx_t_9 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_9);
              __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
              if (unlikely(__Pyx_ListComp_Append(__pyx_t_7, (PyObject*)__pyx_t_9))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3623; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            }
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_7);
            __pyx_t_7 = 0;

     3624:                     block = _consolidate(block, axis)

            /* "pandas/internals.pyx":3624
     *                     dtype = _interleaved_dtype(block)
     *                     block = [b.astype(dtype) for b in block]
     *                     block = _consolidate(block, axis)             # <<<<<<<<<<<<<<
     *
     *                 if len(block) != 1:
     */
            __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_consolidate); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_4);
            __Pyx_INCREF(__pyx_v_block);
            PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_block);
            __Pyx_GIVEREF(__pyx_v_block);
            __Pyx_INCREF(__pyx_v_axis);
            PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_axis);
            __Pyx_GIVEREF(__pyx_v_axis);
            __pyx_t_9 = PyObject_Call(__pyx_t_7, __pyx_t_4, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3624; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_9);
            __pyx_t_9 = 0;
            goto __pyx_L10;
          }
          __pyx_L10:;

     3625:

     3626:                 if len(block) != 1:

          /* "pandas/internals.pyx":3626
     *                     block = _consolidate(block, axis)
     *
     *                 if len(block) != 1:             # <<<<<<<<<<<<<<
     *                     raise ValueError('Cannot create SingleBlockManager with '
     *                                      'more than 1 block')
     */
          __pyx_t_3 = PyObject_Length(__pyx_v_block); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3626; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = ((__pyx_t_3 != 1) != 0);
          if (__pyx_t_1) {

     3627:                     raise ValueError('Cannot create SingleBlockManager with '

            /* "pandas/internals.pyx":3627
     *
     *                 if len(block) != 1:
     *                     raise ValueError('Cannot create SingleBlockManager with '             # <<<<<<<<<<<<<<
     *                                      'more than 1 block')
     *                 block = block[0]
     */
            __pyx_t_9 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__123, NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_9);
            __Pyx_Raise(__pyx_t_9, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }

      /* "pandas/internals.pyx":3627
     *
     *                 if len(block) != 1:
     *                     raise ValueError('Cannot create SingleBlockManager with '             # <<<<<<<<<<<<<<
     *                                      'more than 1 block')
     *                 block = block[0]
     */
      __pyx_tuple__123 = PyTuple_Pack(1, __pyx_kp_s_Cannot_create_SingleBlockManager); if (unlikely(!__pyx_tuple__123)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3627; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__123);
      __Pyx_GIVEREF(__pyx_tuple__123);

     3628:                                      'more than 1 block')

     3629:                 block = block[0]

          /* "pandas/internals.pyx":3629
     *                     raise ValueError('Cannot create SingleBlockManager with '
     *                                      'more than 1 block')
     *                 block = block[0]             # <<<<<<<<<<<<<<
     *
     *             if not isinstance(block, Block):
     */
          __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_block, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_9 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3629; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_9);
          __pyx_t_9 = 0;
          goto __pyx_L9;
        }
        __pyx_L9:;

     3630:

     3631:             if not isinstance(block, Block):

        /* "pandas/internals.pyx":3631
     *                 block = block[0]
     *
     *             if not isinstance(block, Block):             # <<<<<<<<<<<<<<
     *                 block = make_block(block, axis, axis, ndim=1, fastpath=True)
     *
     */
        __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __pyx_t_1 = PyObject_IsInstance(__pyx_v_block, __pyx_t_9); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3631; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
        __pyx_t_2 = ((!(__pyx_t_1 != 0)) != 0);
        if (__pyx_t_2) {

     3632:                 block = make_block(block, axis, axis, ndim=1, fastpath=True)

          /* "pandas/internals.pyx":3632
     *
     *             if not isinstance(block, Block):
     *                 block = make_block(block, axis, axis, ndim=1, fastpath=True)             # <<<<<<<<<<<<<<
     *
     *         self.blocks = [block]
     */
          __pyx_t_9 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3632; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_4 = PyTuple_New(3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3632; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_block);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_block);
          __Pyx_GIVEREF(__pyx_v_block);
          __Pyx_INCREF(__pyx_v_axis);
          PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_axis);
          __Pyx_GIVEREF(__pyx_v_axis);
          __Pyx_INCREF(__pyx_v_axis);
          PyTuple_SET_ITEM(__pyx_t_4, 2, __pyx_v_axis);
          __Pyx_GIVEREF(__pyx_v_axis);
          __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3632; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_ndim, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3632; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3632; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_6 = PyObject_Call(__pyx_t_9, __pyx_t_4, __pyx_t_7); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3632; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF_SET(__pyx_v_block, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L14;
        }
        __pyx_L14:;
      }
      __pyx_L5:;

     3633:

     3634:         self.blocks = [block]

      /* "pandas/internals.pyx":3634
     *                 block = make_block(block, axis, axis, ndim=1, fastpath=True)
     *
     *         self.blocks = [block]             # <<<<<<<<<<<<<<
     *         self._block = self.blocks[0]
     *         self._values = self._block.values
     */
      __pyx_t_6 = PyList_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_INCREF(__pyx_v_block);
      PyList_SET_ITEM(__pyx_t_6, 0, __pyx_v_block);
      __Pyx_GIVEREF(__pyx_v_block);
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_blocks, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3634; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3635:         self._block = self.blocks[0]

      /* "pandas/internals.pyx":3635
     *
     *         self.blocks = [block]
     *         self._block = self.blocks[0]             # <<<<<<<<<<<<<<
     *         self._values = self._block.values
     *         self._has_sparse = self._block.is_sparse
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = __Pyx_GetItemInt(__pyx_t_6, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_7 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3635; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_block_2, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3635; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

     3636:         self._values = self._block.values

      /* "pandas/internals.pyx":3636
     *         self.blocks = [block]
     *         self._block = self.blocks[0]
     *         self._values = self._block.values             # <<<<<<<<<<<<<<
     *         self._has_sparse = self._block.is_sparse
     *
     */
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_values); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values_2, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3636; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3637:         self._has_sparse = self._block.is_sparse

      /* "pandas/internals.pyx":3637
     *         self._block = self.blocks[0]
     *         self._values = self._block.values
     *         self._has_sparse = self._block.is_sparse             # <<<<<<<<<<<<<<
     *
     *     def _post_setstate(self):
     */
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_is_sparse); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_has_sparse, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3637; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;

     3638:

     3639:     def _post_setstate(self):

    /* "pandas/internals.pyx":3639
     *         self._has_sparse = self._block.is_sparse
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._block = self.blocks[0]
     *         self._values = self._block.values
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_3_post_setstate(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_3_post_setstate = {__Pyx_NAMESTR("_post_setstate"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_3_post_setstate, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_3_post_setstate(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_post_setstate (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_2_post_setstate(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_2_post_setstate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_post_setstate", 0);

      /* "pandas/internals.pyx":3639
     *         self._has_sparse = self._block.is_sparse
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._block = self.blocks[0]
     *         self._values = self._block.values
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._post_setstate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3639
     *         self._has_sparse = self._block.is_sparse
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._block = self.blocks[0]
     *         self._values = self._block.values
     */
      __pyx_tuple__696 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__696)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__696);
      __Pyx_GIVEREF(__pyx_tuple__696);

      /* "pandas/internals.pyx":3639
     *         self._has_sparse = self._block.is_sparse
     *
     *     def _post_setstate(self):             # <<<<<<<<<<<<<<
     *         self._block = self.blocks[0]
     *         self._values = self._block.values
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_3_post_setstate, 0, __pyx_n_s_SingleBlockManager__post_setstat, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__697)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_post_setstate, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__697 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__696, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_post_setstate, 3639, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__697)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3639; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3640:         self._block = self.blocks[0]

      /* "pandas/internals.pyx":3640
     *
     *     def _post_setstate(self):
     *         self._block = self.blocks[0]             # <<<<<<<<<<<<<<
     *         self._values = self._block.values
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3640; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_block_2, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3640; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3641:         self._values = self._block.values

      /* "pandas/internals.pyx":3641
     *     def _post_setstate(self):
     *         self._block = self.blocks[0]
     *         self._values = self._block.values             # <<<<<<<<<<<<<<
     *
     *     def _get_counts(self, f):
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3641; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3641; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values_2, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3641; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3642:

     3643:     def _get_counts(self, f):

    /* "pandas/internals.pyx":3643
     *         self._values = self._block.values
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         return { f(self._block) : 1 }
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_5_get_counts(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_5_get_counts = {__Pyx_NAMESTR("_get_counts"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_5_get_counts, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_5_get_counts(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_f = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_counts (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_f,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_get_counts", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3643; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_get_counts") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3643; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_self = values[0];
        __pyx_v_f = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_get_counts", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3643; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._get_counts", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_4_get_counts(__pyx_self, __pyx_v_self, __pyx_v_f);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_4_get_counts(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_f) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_get_counts", 0);

      /* "pandas/internals.pyx":3643
     *         self._values = self._block.values
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         return { f(self._block) : 1 }
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._get_counts", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3643
     *         self._values = self._block.values
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         return { f(self._block) : 1 }
     *
     */
      __pyx_tuple__698 = PyTuple_Pack(2, __pyx_n_s_self, __pyx_n_s_f); if (unlikely(!__pyx_tuple__698)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__698);
      __Pyx_GIVEREF(__pyx_tuple__698);

      /* "pandas/internals.pyx":3643
     *         self._values = self._block.values
     *
     *     def _get_counts(self, f):             # <<<<<<<<<<<<<<
     *         return { f(self._block) : 1 }
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_5_get_counts, 0, __pyx_n_s_SingleBlockManager__get_counts, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__699)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_counts, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__699 = (PyObject*)__Pyx_PyCode_New(2, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__698, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_counts, 3643, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__699)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3643; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3644:         return { f(self._block) : 1 }

      /* "pandas/internals.pyx":3644
     *
     *     def _get_counts(self, f):
     *         return { f(self._block) : 1 }             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyObject_Call(__pyx_v_f, __pyx_t_3, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (PyDict_SetItem(__pyx_t_1, __pyx_t_2, __pyx_int_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3644; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     3645:

     3646:     @property

      /* "pandas/internals.pyx":3646
     *         return { f(self._block) : 1 }
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3646; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3646; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_shape, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3647:     def shape(self):

    /* "pandas/internals.pyx":3647
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple([len(self.axes[0])])
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_7shape(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_7shape = {__Pyx_NAMESTR("shape"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_7shape, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_7shape(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_6shape(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_6shape(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("shape", 0);

      /* "pandas/internals.pyx":3647
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple([len(self.axes[0])])
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.shape", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3647
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple([len(self.axes[0])])
     */
      __pyx_tuple__700 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__700)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__700);
      __Pyx_GIVEREF(__pyx_tuple__700);

      /* "pandas/internals.pyx":3647
     *
     *     @property
     *     def shape(self):             # <<<<<<<<<<<<<<
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple([len(self.axes[0])])
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_7shape, 0, __pyx_n_s_SingleBlockManager_shape, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__701)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__701 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__700, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shape, 3647, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__701)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3647; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3648:         if getattr(self, '_shape', None) is None:

      /* "pandas/internals.pyx":3648
     *     @property
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:             # <<<<<<<<<<<<<<
     *             self._shape = tuple([len(self.axes[0])])
     *         return self._shape
     */
      __pyx_t_1 = __Pyx_GetAttr3(__pyx_v_self, __pyx_n_s_shape_2, Py_None); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3648; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = (__pyx_t_1 == Py_None);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     3649:             self._shape = tuple([len(self.axes[0])])

        /* "pandas/internals.pyx":3649
     *     def shape(self):
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple([len(self.axes[0])])             # <<<<<<<<<<<<<<
     *         return self._shape
     *
     */
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3649; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_5 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyList_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = PyList_AsTuple(((PyObject*)__pyx_t_1)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_shape_2, __pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3649; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     3650:         return self._shape

      /* "pandas/internals.pyx":3650
     *         if getattr(self, '_shape', None) is None:
     *             self._shape = tuple([len(self.axes[0])])
     *         return self._shape             # <<<<<<<<<<<<<<
     *
     *     def apply(self, f, axes=None, do_integrity_check=False, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_shape_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3650; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     3651:

     3652:     def apply(self, f, axes=None, do_integrity_check=False, **kwargs):

    /* "pandas/internals.pyx":3652
     *         return self._shape
     *
     *     def apply(self, f, axes=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         fast path for SingleBlock Manager
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_9apply(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_18SingleBlockManager_8apply[] = "\n        fast path for SingleBlock Manager\n\n        ssee also BlockManager.apply\n        ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_9apply = {__Pyx_NAMESTR("apply"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_9apply, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_18SingleBlockManager_8apply)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_9apply(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_f = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_v_do_integrity_check = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("apply (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_f,&__pyx_n_s_axes,&__pyx_n_s_do_integrity_check,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_f)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("apply", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_do_integrity_check);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "apply") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_f = values[1];
        __pyx_v_axes = values[2];
        __pyx_v_do_integrity_check = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("apply", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_8apply(__pyx_self, __pyx_v_self, __pyx_v_f, __pyx_v_axes, __pyx_v_do_integrity_check, __pyx_v_kwargs);

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_8apply(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_f, PyObject *__pyx_v_axes, PyObject *__pyx_v_do_integrity_check, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_v_applied = NULL;
      PyObject *__pyx_v_bm = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("apply", 0);

      /* "pandas/internals.pyx":3652
     *         return self._shape
     *
     *     def apply(self, f, axes=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         fast path for SingleBlock Manager
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.apply", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_applied);
      __Pyx_XDECREF(__pyx_v_bm);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3652
     *         return self._shape
     *
     *     def apply(self, f, axes=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         fast path for SingleBlock Manager
     */
      __pyx_tuple__702 = PyTuple_Pack(8, __pyx_n_s_self, __pyx_n_s_f, __pyx_n_s_axes, __pyx_n_s_do_integrity_check, __pyx_n_s_kwargs, __pyx_n_s_kwargs, __pyx_n_s_applied, __pyx_n_s_bm); if (unlikely(!__pyx_tuple__702)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__702);
      __Pyx_GIVEREF(__pyx_tuple__702);
      __pyx_codeobj__703 = (PyObject*)__Pyx_PyCode_New(4, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__702, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_apply, 3652, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__703)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3652
     *         return self._shape
     *
     *     def apply(self, f, axes=None, do_integrity_check=False, **kwargs):             # <<<<<<<<<<<<<<
     *         """
     *         fast path for SingleBlock Manager
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_9apply, 0, __pyx_n_s_SingleBlockManager_apply, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__703)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__704);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_apply, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__704 = PyTuple_Pack(2, ((PyObject *)Py_None), ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__704)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3652; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__704);
      __Pyx_GIVEREF(__pyx_tuple__704);

     3653:         """

     3654:         fast path for SingleBlock Manager

     3655:

     3656:         ssee also BlockManager.apply

     3657:         """

     3658:         applied = getattr(self._block, f)(**kwargs)

      /* "pandas/internals.pyx":3658
     *         ssee also BlockManager.apply
     *         """
     *         applied = getattr(self._block, f)(**kwargs)             # <<<<<<<<<<<<<<
     *         bm = self.__class__(applied, axes or self.axes,
     *                             do_integrity_check=do_integrity_check)
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3658; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetAttr(__pyx_t_1, __pyx_v_f); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3658; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_1);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3658; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_applied = __pyx_t_3;
      __pyx_t_3 = 0;

     3659:         bm = self.__class__(applied, axes or self.axes,

      /* "pandas/internals.pyx":3659
     *         """
     *         applied = getattr(self._block, f)(**kwargs)
     *         bm = self.__class__(applied, axes or self.axes,             # <<<<<<<<<<<<<<
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_axes); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_4) {
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __pyx_t_1;
        __pyx_t_1 = 0;
      } else {
        __Pyx_INCREF(__pyx_v_axes);
        __pyx_t_2 = __pyx_v_axes;
      }
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_applied);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_applied);
      __Pyx_GIVEREF(__pyx_v_applied);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_2);
      __Pyx_GIVEREF(__pyx_t_2);
      __pyx_t_2 = 0;
      __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);

      /* "pandas/internals.pyx":3659
     *         """
     *         applied = getattr(self._block, f)(**kwargs)
     *         bm = self.__class__(applied, axes or self.axes,             # <<<<<<<<<<<<<<
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_v_bm = __pyx_t_5;
      __pyx_t_5 = 0;

     3660:                             do_integrity_check=do_integrity_check)

      /* "pandas/internals.pyx":3660
     *         applied = getattr(self._block, f)(**kwargs)
     *         bm = self.__class__(applied, axes or self.axes,
     *                             do_integrity_check=do_integrity_check)             # <<<<<<<<<<<<<<
     *         bm._consolidate_inplace()
     *         return bm
     */
      if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_do_integrity_check, __pyx_v_do_integrity_check) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3659; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3661:         bm._consolidate_inplace()

      /* "pandas/internals.pyx":3661
     *         bm = self.__class__(applied, axes or self.axes,
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return bm
     *
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_bm, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_2 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3661; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3662:         return bm

      /* "pandas/internals.pyx":3662
     *                             do_integrity_check=do_integrity_check)
     *         bm._consolidate_inplace()
     *         return bm             # <<<<<<<<<<<<<<
     *
     *     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_bm);
      __pyx_r = __pyx_v_bm;
      goto __pyx_L0;

     3663:

     3664:     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,

    /* "pandas/internals.pyx":3664
     *         return bm
     *
     *     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,             # <<<<<<<<<<<<<<
     *                 limit=None, copy=True):
     *         # if we are the same and don't copy, just return
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_11reindex(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_11reindex = {__Pyx_NAMESTR("reindex"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_11reindex, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_11reindex(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_axis = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_axis,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_copy,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));
        values[4] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":3664
     *         return bm
     *
     *     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,             # <<<<<<<<<<<<<<
     *                 limit=None, copy=True):
     *         # if we are the same and don't copy, just return
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_10reindex(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_axis, PyObject *__pyx_v_indexer, PyObject *__pyx_v_method, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_limit, PyObject *__pyx_v_copy) {
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_mgr = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex", 0);

      /* "pandas/internals.pyx":3664
     *         return bm
     *
     *     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,             # <<<<<<<<<<<<<<
     *                 limit=None, copy=True):
     *         # if we are the same and don't copy, just return
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.reindex", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_mgr);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3664
     *         return bm
     *
     *     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,             # <<<<<<<<<<<<<<
     *                 limit=None, copy=True):
     *         # if we are the same and don't copy, just return
     */
      __pyx_tuple__705 = PyTuple_Pack(9, __pyx_n_s_self, __pyx_n_s_new_axis, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_copy, __pyx_n_s_block, __pyx_n_s_mgr); if (unlikely(!__pyx_tuple__705)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__705);
      __Pyx_GIVEREF(__pyx_tuple__705);
      __pyx_codeobj__706 = (PyObject*)__Pyx_PyCode_New(7, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__705, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex, 3664, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__706)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3664
     *         return bm
     *
     *     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,             # <<<<<<<<<<<<<<
     *                 limit=None, copy=True):
     *         # if we are the same and don't copy, just return
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_11reindex, 0, __pyx_n_s_SingleBlockManager_reindex, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__706)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__707);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__707 = PyTuple_Pack(5, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__707)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__707);
      __Pyx_GIVEREF(__pyx_tuple__707);

     3665:                 limit=None, copy=True):

        /* "pandas/internals.pyx":3665
     *
     *     def reindex(self, new_axis, indexer=None, method=None, fill_value=None,
     *                 limit=None, copy=True):             # <<<<<<<<<<<<<<
     *         # if we are the same and don't copy, just return
     *         if not copy and self.index.equals(new_axis):
     */
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex", 0, 2, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_axis = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_method = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_limit = values[5];
        __pyx_v_copy = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3664; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.reindex", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_10reindex(__pyx_self, __pyx_v_self, __pyx_v_new_axis, __pyx_v_indexer, __pyx_v_method, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_copy);

     3666:         # if we are the same and don't copy, just return

     3667:         if not copy and self.index.equals(new_axis):

      /* "pandas/internals.pyx":3667
     *                 limit=None, copy=True):
     *         # if we are the same and don't copy, just return
     *         if not copy and self.index.equals(new_axis):             # <<<<<<<<<<<<<<
     *             return self
     *
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_copy); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = (!__pyx_t_1);
      if (__pyx_t_2) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_equals); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_new_axis);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_new_axis);
        __Pyx_GIVEREF(__pyx_v_new_axis);
        __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3667; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = __pyx_t_1;
      } else {
        __pyx_t_6 = __pyx_t_2;
      }
      if (__pyx_t_6) {

     3668:             return self

        /* "pandas/internals.pyx":3668
     *         # if we are the same and don't copy, just return
     *         if not copy and self.index.equals(new_axis):
     *             return self             # <<<<<<<<<<<<<<
     *
     *         block = self._block.reindex_items_from(new_axis, indexer=indexer,
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_self);
        __pyx_r = __pyx_v_self;
        goto __pyx_L0;
      }

     3669:

     3670:         block = self._block.reindex_items_from(new_axis, indexer=indexer,

      /* "pandas/internals.pyx":3670
     *             return self
     *
     *         block = self._block.reindex_items_from(new_axis, indexer=indexer,             # <<<<<<<<<<<<<<
     *                                                method=method,
     *                                                fill_value=fill_value,
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_reindex_items_from); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_new_axis);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_new_axis);
      __Pyx_GIVEREF(__pyx_v_new_axis);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_indexer, __pyx_v_indexer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3670
     *             return self
     *
     *         block = self._block.reindex_items_from(new_axis, indexer=indexer,             # <<<<<<<<<<<<<<
     *                                                method=method,
     *                                                fill_value=fill_value,
     */
      __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_5, __pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_block = __pyx_t_7;
      __pyx_t_7 = 0;

     3671:                                                method=method,

      /* "pandas/internals.pyx":3671
     *
     *         block = self._block.reindex_items_from(new_axis, indexer=indexer,
     *                                                method=method,             # <<<<<<<<<<<<<<
     *                                                fill_value=fill_value,
     *                                                limit=limit, copy=copy)
     */
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_method, __pyx_v_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3672:                                                fill_value=fill_value,

      /* "pandas/internals.pyx":3672
     *         block = self._block.reindex_items_from(new_axis, indexer=indexer,
     *                                                method=method,
     *                                                fill_value=fill_value,             # <<<<<<<<<<<<<<
     *                                                limit=limit, copy=copy)
     *         mgr = SingleBlockManager(block, new_axis)
     */
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3673:                                                limit=limit, copy=copy)

      /* "pandas/internals.pyx":3673
     *                                                method=method,
     *                                                fill_value=fill_value,
     *                                                limit=limit, copy=copy)             # <<<<<<<<<<<<<<
     *         mgr = SingleBlockManager(block, new_axis)
     *         mgr._consolidate_inplace()
     */
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3670; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3674:         mgr = SingleBlockManager(block, new_axis)

      /* "pandas/internals.pyx":3674
     *                                                fill_value=fill_value,
     *                                                limit=limit, copy=copy)
     *         mgr = SingleBlockManager(block, new_axis)             # <<<<<<<<<<<<<<
     *         mgr._consolidate_inplace()
     *         return mgr
     */
      __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_SingleBlockManager); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3674; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_7);
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3674; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_block);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_block);
      __Pyx_GIVEREF(__pyx_v_block);
      __Pyx_INCREF(__pyx_v_new_axis);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_new_axis);
      __Pyx_GIVEREF(__pyx_v_new_axis);
      __pyx_t_5 = PyObject_Call(__pyx_t_7, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3674; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_mgr = __pyx_t_5;
      __pyx_t_5 = 0;

     3675:         mgr._consolidate_inplace()

      /* "pandas/internals.pyx":3675
     *                                                limit=limit, copy=copy)
     *         mgr = SingleBlockManager(block, new_axis)
     *         mgr._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return mgr
     *
     */
      __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_mgr, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3675; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyObject_Call(__pyx_t_5, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3675; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3676:         return mgr

      /* "pandas/internals.pyx":3676
     *         mgr = SingleBlockManager(block, new_axis)
     *         mgr._consolidate_inplace()
     *         return mgr             # <<<<<<<<<<<<<<
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_mgr);
      __pyx_r = __pyx_v_mgr;
      goto __pyx_L0;

     3677:

     3678:     def _reindex_indexer_items(self, new_items, indexer, fill_value):

    /* "pandas/internals.pyx":3678
     *         return mgr
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # equiv to a reindex
     *         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_13_reindex_indexer_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_13_reindex_indexer_items = {__Pyx_NAMESTR("_reindex_indexer_items"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_13_reindex_indexer_items, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_13_reindex_indexer_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_items = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_reindex_indexer_items (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_items,&__pyx_n_s_indexer,&__pyx_n_s_fill_value,0};
        PyObject* values[4] = {0,0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (likely((values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_reindex_indexer_items") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 4) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
          values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
        }
        __pyx_v_self = values[0];
        __pyx_v_new_items = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_fill_value = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_reindex_indexer_items", 1, 4, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._reindex_indexer_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_12_reindex_indexer_items(__pyx_self, __pyx_v_self, __pyx_v_new_items, __pyx_v_indexer, __pyx_v_fill_value);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_12_reindex_indexer_items(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_items, PyObject *__pyx_v_indexer, PyObject *__pyx_v_fill_value) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_reindex_indexer_items", 0);

      /* "pandas/internals.pyx":3678
     *         return mgr
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # equiv to a reindex
     *         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._reindex_indexer_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3678
     *         return mgr
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # equiv to a reindex
     *         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,
     */
      __pyx_tuple__708 = PyTuple_Pack(4, __pyx_n_s_self, __pyx_n_s_new_items, __pyx_n_s_indexer, __pyx_n_s_fill_value); if (unlikely(!__pyx_tuple__708)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__708);
      __Pyx_GIVEREF(__pyx_tuple__708);

      /* "pandas/internals.pyx":3678
     *         return mgr
     *
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):             # <<<<<<<<<<<<<<
     *         # equiv to a reindex
     *         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_13_reindex_indexer_items, 0, __pyx_n_s_SingleBlockManager__reindex_inde, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__709)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_indexer_items, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__709 = (PyObject*)__Pyx_PyCode_New(4, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__708, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_indexer_items, 3678, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__709)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3678; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3679:         # equiv to a reindex

     3680:         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,

      /* "pandas/internals.pyx":3680
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):
     *         # equiv to a reindex
     *         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,             # <<<<<<<<<<<<<<
     *                             copy=False)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_new_items);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_new_items);
      __Pyx_GIVEREF(__pyx_v_new_items);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_indexer, __pyx_v_indexer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3680
     *     def _reindex_indexer_items(self, new_items, indexer, fill_value):
     *         # equiv to a reindex
     *         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,             # <<<<<<<<<<<<<<
     *                             copy=False)
     *
     */
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_r = __pyx_t_4;
      __pyx_t_4 = 0;
      goto __pyx_L0;

     3681:                             copy=False)

      /* "pandas/internals.pyx":3681
     *         # equiv to a reindex
     *         return self.reindex(new_items, indexer=indexer, fill_value=fill_value,
     *                             copy=False)             # <<<<<<<<<<<<<<
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,
     */
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_copy, Py_False) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3680; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3682:

     3683:     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,

    /* "pandas/internals.pyx":3683
     *                             copy=False)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         if method is None:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_15reindex_axis0_with_method(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_15reindex_axis0_with_method = {__Pyx_NAMESTR("reindex_axis0_with_method"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_15reindex_axis0_with_method, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_15reindex_axis0_with_method(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_new_axis = 0;
      PyObject *__pyx_v_indexer = 0;
      PyObject *__pyx_v_method = 0;
      PyObject *__pyx_v_fill_value = 0;
      PyObject *__pyx_v_limit = 0;
      PyObject *__pyx_v_copy = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis0_with_method (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_new_axis,&__pyx_n_s_indexer,&__pyx_n_s_method,&__pyx_n_s_fill_value,&__pyx_n_s_limit,&__pyx_n_s_copy,0};
        PyObject* values[7] = {0,0,0,0,0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_None));
        values[3] = ((PyObject *)((PyObject *)Py_None));

      /* "pandas/internals.pyx":3683
     *                             copy=False)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         if method is None:
     */

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_14reindex_axis0_with_method(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_new_axis, PyObject *__pyx_v_indexer, PyObject *__pyx_v_method, PyObject *__pyx_v_fill_value, PyObject *__pyx_v_limit, PyObject *__pyx_v_copy) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("reindex_axis0_with_method", 0);
      __Pyx_INCREF(__pyx_v_indexer);

      /* "pandas/internals.pyx":3683
     *                             copy=False)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         if method is None:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.reindex_axis0_with_method", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_indexer);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3683
     *                             copy=False)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         if method is None:
     */
      __pyx_tuple__710 = PyTuple_Pack(7, __pyx_n_s_self, __pyx_n_s_new_axis, __pyx_n_s_indexer, __pyx_n_s_method, __pyx_n_s_fill_value, __pyx_n_s_limit, __pyx_n_s_copy); if (unlikely(!__pyx_tuple__710)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__710);
      __Pyx_GIVEREF(__pyx_tuple__710);
      __pyx_codeobj__711 = (PyObject*)__Pyx_PyCode_New(7, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__710, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_reindex_axis0_with_method, 3683, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__711)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3683
     *                             copy=False)
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,             # <<<<<<<<<<<<<<
     *                                   fill_value=None, limit=None, copy=True):
     *         if method is None:
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_15reindex_axis0_with_method, 0, __pyx_n_s_SingleBlockManager_reindex_axis0, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__711)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__712);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_reindex_axis0_with_method, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__712 = PyTuple_Pack(5, ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_None), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__712)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__712);
      __Pyx_GIVEREF(__pyx_tuple__712);

     3684:                                   fill_value=None, limit=None, copy=True):

        /* "pandas/internals.pyx":3684
     *
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,
     *                                   fill_value=None, limit=None, copy=True):             # <<<<<<<<<<<<<<
     *         if method is None:
     *             indexer = None
     */
        values[4] = ((PyObject *)((PyObject *)Py_None));
        values[5] = ((PyObject *)((PyObject *)Py_None));
        values[6] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_new_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("reindex_axis0_with_method", 0, 2, 7, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_indexer);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_method);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_fill_value);
              if (value) { values[4] = value; kw_args--; }
            }
            case  5:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_limit);
              if (value) { values[5] = value; kw_args--; }
            }
            case  6:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_copy);
              if (value) { values[6] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "reindex_axis0_with_method") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  7: values[6] = PyTuple_GET_ITEM(__pyx_args, 6);
            case  6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5);
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_new_axis = values[1];
        __pyx_v_indexer = values[2];
        __pyx_v_method = values[3];
        __pyx_v_fill_value = values[4];
        __pyx_v_limit = values[5];
        __pyx_v_copy = values[6];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("reindex_axis0_with_method", 0, 2, 7, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3683; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.reindex_axis0_with_method", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_14reindex_axis0_with_method(__pyx_self, __pyx_v_self, __pyx_v_new_axis, __pyx_v_indexer, __pyx_v_method, __pyx_v_fill_value, __pyx_v_limit, __pyx_v_copy);

     3685:         if method is None:

      /* "pandas/internals.pyx":3685
     *     def reindex_axis0_with_method(self, new_axis, indexer=None, method=None,
     *                                   fill_value=None, limit=None, copy=True):
     *         if method is None:             # <<<<<<<<<<<<<<
     *             indexer = None
     *         return self.reindex(new_axis, indexer=indexer, method=method,
     */
      __pyx_t_1 = (__pyx_v_method == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     3686:             indexer = None

        /* "pandas/internals.pyx":3686
     *                                   fill_value=None, limit=None, copy=True):
     *         if method is None:
     *             indexer = None             # <<<<<<<<<<<<<<
     *         return self.reindex(new_axis, indexer=indexer, method=method,
     *                             fill_value=fill_value, limit=limit, copy=copy)
     */
        __Pyx_INCREF(Py_None);
        __Pyx_DECREF_SET(__pyx_v_indexer, Py_None);
        goto __pyx_L3;
      }
      __pyx_L3:;

     3687:         return self.reindex(new_axis, indexer=indexer, method=method,

      /* "pandas/internals.pyx":3687
     *         if method is None:
     *             indexer = None
     *         return self.reindex(new_axis, indexer=indexer, method=method,             # <<<<<<<<<<<<<<
     *                             fill_value=fill_value, limit=limit, copy=copy)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_reindex); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_new_axis);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_new_axis);
      __Pyx_GIVEREF(__pyx_v_new_axis);
      __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_indexer, __pyx_v_indexer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_method, __pyx_v_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3687
     *         if method is None:
     *             indexer = None
     *         return self.reindex(new_axis, indexer=indexer, method=method,             # <<<<<<<<<<<<<<
     *                             fill_value=fill_value, limit=limit, copy=copy)
     *
     */
      __pyx_t_6 = PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_r = __pyx_t_6;
      __pyx_t_6 = 0;
      goto __pyx_L0;

     3688:                             fill_value=fill_value, limit=limit, copy=copy)

      /* "pandas/internals.pyx":3688
     *             indexer = None
     *         return self.reindex(new_axis, indexer=indexer, method=method,
     *                             fill_value=fill_value, limit=limit, copy=copy)             # <<<<<<<<<<<<<<
     *
     *     def _delete_from_block(self, i, item):
     */
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_fill_value, __pyx_v_fill_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_limit, __pyx_v_limit) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_copy, __pyx_v_copy) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3687; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3689:

     3690:     def _delete_from_block(self, i, item):

    /* "pandas/internals.pyx":3690
     *                             fill_value=fill_value, limit=limit, copy=copy)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         super(SingleBlockManager, self)._delete_from_block(i, item)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_17_delete_from_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_17_delete_from_block = {__Pyx_NAMESTR("_delete_from_block"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_17_delete_from_block, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_17_delete_from_block(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_i = 0;
      PyObject *__pyx_v_item = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_delete_from_block (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_i,&__pyx_n_s_item,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_i)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_delete_from_block", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_item)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_delete_from_block", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_delete_from_block") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_self = values[0];
        __pyx_v_i = values[1];
        __pyx_v_item = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_delete_from_block", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._delete_from_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_16_delete_from_block(__pyx_self, __pyx_v_self, __pyx_v_i, __pyx_v_item);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_16_delete_from_block(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_i, PyObject *__pyx_v_item) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_delete_from_block", 0);

      /* "pandas/internals.pyx":3690
     *                             fill_value=fill_value, limit=limit, copy=copy)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         super(SingleBlockManager, self)._delete_from_block(i, item)
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._delete_from_block", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3690
     *                             fill_value=fill_value, limit=limit, copy=copy)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         super(SingleBlockManager, self)._delete_from_block(i, item)
     *
     */
      __pyx_tuple__713 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_i, __pyx_n_s_item); if (unlikely(!__pyx_tuple__713)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__713);
      __Pyx_GIVEREF(__pyx_tuple__713);

      /* "pandas/internals.pyx":3690
     *                             fill_value=fill_value, limit=limit, copy=copy)
     *
     *     def _delete_from_block(self, i, item):             # <<<<<<<<<<<<<<
     *         super(SingleBlockManager, self)._delete_from_block(i, item)
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_17_delete_from_block, 0, __pyx_n_s_SingleBlockManager__delete_from, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__714)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_delete_from_block, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__714 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__713, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_delete_from_block, 3690, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__714)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3690; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3691:         super(SingleBlockManager, self)._delete_from_block(i, item)

      /* "pandas/internals.pyx":3691
     *
     *     def _delete_from_block(self, i, item):
     *         super(SingleBlockManager, self)._delete_from_block(i, item)             # <<<<<<<<<<<<<<
     *
     *         # reset our state
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_SingleBlockManager); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3691; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3691; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_self);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self);
      __Pyx_GIVEREF(__pyx_v_self);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_builtin_super, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3691; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_delete_from_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3691; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3691; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_i);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_i);
      __Pyx_GIVEREF(__pyx_v_i);
      __Pyx_INCREF(__pyx_v_item);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_item);
      __Pyx_GIVEREF(__pyx_v_item);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3691; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3692:

     3693:         # reset our state

     3694:         self._block = (

      /* "pandas/internals.pyx":3694
     *
     *         # reset our state
     *         self._block = (             # <<<<<<<<<<<<<<
     *             self.blocks[0] if len(self.blocks) else
     *             make_block(np.array([], dtype=self._block.dtype), [], [])
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_block_2, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3694; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;

     3695:             self.blocks[0] if len(self.blocks) else

      /* "pandas/internals.pyx":3695
     *         # reset our state
     *         self._block = (
     *             self.blocks[0] if len(self.blocks) else             # <<<<<<<<<<<<<<
     *             make_block(np.array([], dtype=self._block.dtype), [], [])
     *         )
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_4 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      if ((__pyx_t_4 != 0)) {
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3695; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3695; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_3 = __pyx_t_2;
        __pyx_t_2 = 0;
      } else {

     3696:             make_block(np.array([], dtype=self._block.dtype), [], [])

        /* "pandas/internals.pyx":3696
     *         self._block = (
     *             self.blocks[0] if len(self.blocks) else
     *             make_block(np.array([], dtype=self._block.dtype), [], [])             # <<<<<<<<<<<<<<
     *         )
     *         self._values = self._block.values
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_array); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_7, __pyx_n_s_dtype); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if (PyDict_SetItem(__pyx_t_1, __pyx_n_s_dtype, __pyx_t_8) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = PyObject_Call(__pyx_t_5, __pyx_t_6, __pyx_t_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = PyList_New(0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8);
        __Pyx_GIVEREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_6);
        __pyx_t_8 = 0;
        __pyx_t_1 = 0;
        __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3696; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_3 = __pyx_t_6;
        __pyx_t_6 = 0;
      }

     3697:         )

     3698:         self._values = self._block.values

      /* "pandas/internals.pyx":3698
     *             make_block(np.array([], dtype=self._block.dtype), [], [])
     *         )
     *         self._values = self._block.values             # <<<<<<<<<<<<<<
     *
     *     def get_slice(self, slobj, raise_on_error=False):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_values); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_values_2, __pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3698; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3699:

     3700:     def get_slice(self, slobj, raise_on_error=False):

    /* "pandas/internals.pyx":3700
     *         self._values = self._block.values
     *
     *     def get_slice(self, slobj, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_19get_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_19get_slice = {__Pyx_NAMESTR("get_slice"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_19get_slice, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_19get_slice(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_slobj = 0;
      PyObject *__pyx_v_raise_on_error = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_slice (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_slobj,&__pyx_n_s_raise_on_error,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_False));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_slobj)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("get_slice", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_raise_on_error);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "get_slice") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_slobj = values[1];
        __pyx_v_raise_on_error = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("get_slice", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.get_slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_18get_slice(__pyx_self, __pyx_v_self, __pyx_v_slobj, __pyx_v_raise_on_error);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_18get_slice(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_slobj, PyObject *__pyx_v_raise_on_error) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("get_slice", 0);

      /* "pandas/internals.pyx":3700
     *         self._values = self._block.values
     *
     *     def get_slice(self, slobj, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.get_slice", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3700
     *         self._values = self._block.values
     *
     *     def get_slice(self, slobj, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)
     */
      __pyx_tuple__715 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_slobj, __pyx_n_s_raise_on_error); if (unlikely(!__pyx_tuple__715)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__715);
      __Pyx_GIVEREF(__pyx_tuple__715);
      __pyx_codeobj__716 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__715, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_get_slice, 3700, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__716)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3700
     *         self._values = self._block.values
     *
     *     def get_slice(self, slobj, raise_on_error=False):             # <<<<<<<<<<<<<<
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_19get_slice, 0, __pyx_n_s_SingleBlockManager_get_slice, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__716)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__717);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_get_slice, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__717 = PyTuple_Pack(1, ((PyObject *)Py_False)); if (unlikely(!__pyx_tuple__717)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3700; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__717);
      __Pyx_GIVEREF(__pyx_tuple__717);

     3701:         if raise_on_error:

      /* "pandas/internals.pyx":3701
     *
     *     def get_slice(self, slobj, raise_on_error=False):
     *         if raise_on_error:             # <<<<<<<<<<<<<<
     *             _check_slice_bounds(slobj, self.index)
     *         return self.__class__(self._block._slice(slobj),
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_raise_on_error); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3701; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     3702:             _check_slice_bounds(slobj, self.index)

        /* "pandas/internals.pyx":3702
     *     def get_slice(self, slobj, raise_on_error=False):
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)             # <<<<<<<<<<<<<<
     *         return self.__class__(self._block._slice(slobj),
     *                               self.index._getitem_slice(slobj), fastpath=True)
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_check_slice_bounds); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_slobj);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_slobj);
        __Pyx_GIVEREF(__pyx_v_slobj);
        PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3702; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     3703:         return self.__class__(self._block._slice(slobj),

      /* "pandas/internals.pyx":3703
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)
     *         return self.__class__(self._block._slice(slobj),             # <<<<<<<<<<<<<<
     *                               self.index._getitem_slice(slobj), fastpath=True)
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_class); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_slice); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_slobj);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_slobj);
      __Pyx_GIVEREF(__pyx_v_slobj);
      __pyx_t_5 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "pandas/internals.pyx":3703
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)
     *         return self.__class__(self._block._slice(slobj),             # <<<<<<<<<<<<<<
     *                               self.index._getitem_slice(slobj), fastpath=True)
     *
     */
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_6);
      __Pyx_GIVEREF(__pyx_t_6);
      __pyx_t_5 = 0;
      __pyx_t_6 = 0;
      __pyx_t_6 = PyDict_New(); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);

      /* "pandas/internals.pyx":3703
     *         if raise_on_error:
     *             _check_slice_bounds(slobj, self.index)
     *         return self.__class__(self._block._slice(slobj),             # <<<<<<<<<<<<<<
     *                               self.index._getitem_slice(slobj), fastpath=True)
     *
     */
      __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_4, __pyx_t_6); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __pyx_r = __pyx_t_5;
      __pyx_t_5 = 0;
      goto __pyx_L0;

     3704:                               self.index._getitem_slice(slobj), fastpath=True)

      /* "pandas/internals.pyx":3704
     *             _check_slice_bounds(slobj, self.index)
     *         return self.__class__(self._block._slice(slobj),
     *                               self.index._getitem_slice(slobj), fastpath=True)             # <<<<<<<<<<<<<<
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_index); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_getitem_slice); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_slobj);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_slobj);
      __Pyx_GIVEREF(__pyx_v_slobj);
      __pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3704; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

      /* "pandas/internals.pyx":3704
     *             _check_slice_bounds(slobj, self.index)
     *         return self.__class__(self._block._slice(slobj),
     *                               self.index._getitem_slice(slobj), fastpath=True)             # <<<<<<<<<<<<<<
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):
     */
      if (PyDict_SetItem(__pyx_t_6, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3703; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3705:

     3706:     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):

    /* "pandas/internals.pyx":3706
     *                               self.index._getitem_slice(slobj), fastpath=True)
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_21set_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_21set_axis = {__Pyx_NAMESTR("set_axis"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_21set_axis, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_21set_axis(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_axis = 0;
      PyObject *__pyx_v_value = 0;
      PyObject *__pyx_v_maybe_rename = 0;
      PyObject *__pyx_v_check_axis = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_axis (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_axis,&__pyx_n_s_value,&__pyx_n_s_maybe_rename,&__pyx_n_s_check_axis,0};
        PyObject* values[5] = {0,0,0,0,0};
        values[3] = ((PyObject *)((PyObject *)Py_True));
        values[4] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axis)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_axis", 0, 3, 5, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_value)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_axis", 0, 3, 5, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_maybe_rename);
              if (value) { values[3] = value; kw_args--; }
            }
            case  4:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_check_axis);
              if (value) { values[4] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set_axis") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4);
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_axis = values[1];
        __pyx_v_value = values[2];
        __pyx_v_maybe_rename = values[3];
        __pyx_v_check_axis = values[4];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set_axis", 0, 3, 5, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.set_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_20set_axis(__pyx_self, __pyx_v_self, __pyx_v_axis, __pyx_v_value, __pyx_v_maybe_rename, __pyx_v_check_axis);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_20set_axis(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_axis, PyObject *__pyx_v_value, PyObject *__pyx_v_maybe_rename, PyObject *__pyx_v_check_axis) {
      CYTHON_UNUSED PyObject *__pyx_v_cur_axis = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_axis", 0);
      __Pyx_INCREF(__pyx_v_value);

      /* "pandas/internals.pyx":3706
     *                               self.index._getitem_slice(slobj), fastpath=True)
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.set_axis", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_cur_axis);
      __Pyx_XDECREF(__pyx_v_value);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3706
     *                               self.index._getitem_slice(slobj), fastpath=True)
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     */
      __pyx_tuple__718 = PyTuple_Pack(6, __pyx_n_s_self, __pyx_n_s_axis, __pyx_n_s_value, __pyx_n_s_maybe_rename, __pyx_n_s_check_axis, __pyx_n_s_cur_axis); if (unlikely(!__pyx_tuple__718)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__718);
      __Pyx_GIVEREF(__pyx_tuple__718);
      __pyx_codeobj__719 = (PyObject*)__Pyx_PyCode_New(5, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__718, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_axis_2, 3706, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__719)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3706
     *                               self.index._getitem_slice(slobj), fastpath=True)
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):             # <<<<<<<<<<<<<<
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_21set_axis, 0, __pyx_n_s_SingleBlockManager_set_axis, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__719)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__720);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_axis_2, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__720 = PyTuple_Pack(2, ((PyObject *)Py_True), ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__720)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3706; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__720);
      __Pyx_GIVEREF(__pyx_tuple__720);

     3707:         cur_axis, value = self._set_axis(axis, value, check_axis)

      /* "pandas/internals.pyx":3707
     *
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):
     *         cur_axis, value = self._set_axis(axis, value, check_axis)             # <<<<<<<<<<<<<<
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     *
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_set_axis); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_axis);
      __Pyx_GIVEREF(__pyx_v_axis);
      __Pyx_INCREF(__pyx_v_value);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_value);
      __Pyx_GIVEREF(__pyx_v_value);
      __Pyx_INCREF(__pyx_v_check_axis);
      PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_check_axis);
      __Pyx_GIVEREF(__pyx_v_check_axis);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
        PyObject* sequence = __pyx_t_3;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 2)) {
          if (size > 2) __Pyx_RaiseTooManyValuesError(2);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_1);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        #endif
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_5 = Py_TYPE(__pyx_t_4)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_1 = __pyx_t_5(__pyx_t_4); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_5(__pyx_t_4), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = NULL;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3707; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_cur_axis = __pyx_t_2;
      __pyx_t_2 = 0;
      __Pyx_DECREF_SET(__pyx_v_value, __pyx_t_1);
      __pyx_t_1 = 0;

     3708:         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)

      /* "pandas/internals.pyx":3708
     *     def set_axis(self, axis, value, maybe_rename=True, check_axis=True):
     *         cur_axis, value = self._set_axis(axis, value, check_axis)
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)             # <<<<<<<<<<<<<<
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):
     */
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_set_ref_items); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_items); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_maybe_rename, __pyx_v_maybe_rename) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_t_1, __pyx_t_2, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3708; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3709:

     3710:     def set_ref_items(self, ref_items, maybe_rename=True):

    /* "pandas/internals.pyx":3710
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """ we can optimize and our ref_locs are always equal to ref_items """
     *         if maybe_rename:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_23set_ref_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_18SingleBlockManager_22set_ref_items[] = " we can optimize and our ref_locs are always equal to ref_items ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_23set_ref_items = {__Pyx_NAMESTR("set_ref_items"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_23set_ref_items, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_18SingleBlockManager_22set_ref_items)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_23set_ref_items(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_maybe_rename = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_ref_items (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,&__pyx_n_s_ref_items,&__pyx_n_s_maybe_rename,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)((PyObject *)Py_True));
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("set_ref_items", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_maybe_rename);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "set_ref_items") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_self = values[0];
        __pyx_v_ref_items = values[1];
        __pyx_v_maybe_rename = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("set_ref_items", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.set_ref_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_22set_ref_items(__pyx_self, __pyx_v_self, __pyx_v_ref_items, __pyx_v_maybe_rename);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_22set_ref_items(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_maybe_rename) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("set_ref_items", 0);

      /* "pandas/internals.pyx":3710
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """ we can optimize and our ref_locs are always equal to ref_items """
     *         if maybe_rename:
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.set_ref_items", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3710
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """ we can optimize and our ref_locs are always equal to ref_items """
     *         if maybe_rename:
     */
      __pyx_tuple__721 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_ref_items, __pyx_n_s_maybe_rename); if (unlikely(!__pyx_tuple__721)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__721);
      __Pyx_GIVEREF(__pyx_tuple__721);
      __pyx_codeobj__722 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__721, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_set_ref_items, 3710, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__722)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

      /* "pandas/internals.pyx":3710
     *         self._block.set_ref_items(self.items, maybe_rename=maybe_rename)
     *
     *     def set_ref_items(self, ref_items, maybe_rename=True):             # <<<<<<<<<<<<<<
     *         """ we can optimize and our ref_locs are always equal to ref_items """
     *         if maybe_rename:
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_23set_ref_items, 0, __pyx_n_s_SingleBlockManager_set_ref_items, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__722)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_CyFunction_SetDefaultsTuple(__pyx_t_5, __pyx_tuple__723);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_set_ref_items, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_tuple__723 = PyTuple_Pack(1, ((PyObject *)Py_True)); if (unlikely(!__pyx_tuple__723)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3710; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__723);
      __Pyx_GIVEREF(__pyx_tuple__723);

     3711:         """ we can optimize and our ref_locs are always equal to ref_items """

     3712:         if maybe_rename:

      /* "pandas/internals.pyx":3712
     *     def set_ref_items(self, ref_items, maybe_rename=True):
     *         """ we can optimize and our ref_locs are always equal to ref_items """
     *         if maybe_rename:             # <<<<<<<<<<<<<<
     *             self.items = ref_items
     *         self.ref_items = ref_items
     */
      __pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_v_maybe_rename); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3712; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_1) {

     3713:             self.items = ref_items

        /* "pandas/internals.pyx":3713
     *         """ we can optimize and our ref_locs are always equal to ref_items """
     *         if maybe_rename:
     *             self.items = ref_items             # <<<<<<<<<<<<<<
     *         self.ref_items = ref_items
     *
     */
        if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_items, __pyx_v_ref_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3713; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L3;
      }
      __pyx_L3:;

     3714:         self.ref_items = ref_items

      /* "pandas/internals.pyx":3714
     *         if maybe_rename:
     *             self.items = ref_items
     *         self.ref_items = ref_items             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      if (__Pyx_PyObject_SetAttrStr(__pyx_v_self, __pyx_n_s_ref_items, __pyx_v_ref_items) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3714; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3715:

     3716:     @property

      /* "pandas/internals.pyx":3716
     *         self.ref_items = ref_items
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def index(self):
     *         return self.axes[0]
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3716; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3716; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_index, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3717; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3717:     def index(self):

    /* "pandas/internals.pyx":3717
     *
     *     @property
     *     def index(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_25index(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_25index = {__Pyx_NAMESTR("index"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_25index, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_25index(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("index (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_24index(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_24index(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("index", 0);

      /* "pandas/internals.pyx":3717
     *
     *     @property
     *     def index(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.index", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3717
     *
     *     @property
     *     def index(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *
     */
      __pyx_tuple__724 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__724)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3717; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__724);
      __Pyx_GIVEREF(__pyx_tuple__724);

      /* "pandas/internals.pyx":3717
     *
     *     @property
     *     def index(self):             # <<<<<<<<<<<<<<
     *         return self.axes[0]
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_25index, 0, __pyx_n_s_SingleBlockManager_index, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__725)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3717; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__725 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__724, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_index, 3717, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__725)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3717; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3718:         return self.axes[0]

      /* "pandas/internals.pyx":3718
     *     @property
     *     def index(self):
     *         return self.axes[0]             # <<<<<<<<<<<<<<
     *
     *     def convert(self, **kwargs):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3718; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_GetItemInt(__pyx_t_1, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_2 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3718; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3719:

     3720:     def convert(self, **kwargs):

    /* "pandas/internals.pyx":3720
     *         return self.axes[0]
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert the whole block as one """
     *         kwargs['by_item'] = False
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_27convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_18SingleBlockManager_26convert[] = " convert the whole block as one ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_27convert = {__Pyx_NAMESTR("convert"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_27convert, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_18SingleBlockManager_26convert)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_27convert(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_self = 0;
      PyObject *__pyx_v_kwargs = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert (wrapper)", 0);
      __pyx_v_kwargs = PyDict_New(); if (unlikely(!__pyx_v_kwargs)) return NULL;
      __Pyx_GOTREF(__pyx_v_kwargs);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_self,0};
        PyObject* values[1] = {0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_self)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, __pyx_v_kwargs, values, pos_args, "convert") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3720; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
        }
        __pyx_v_self = values[0];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("convert", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3720; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_DECREF(__pyx_v_kwargs); __pyx_v_kwargs = 0;
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_26convert(__pyx_self, __pyx_v_self, __pyx_v_kwargs);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_XDECREF(__pyx_v_kwargs);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_26convert(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self, PyObject *__pyx_v_kwargs) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("convert", 0);

      /* "pandas/internals.pyx":3720
     *         return self.axes[0]
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert the whole block as one """
     *         kwargs['by_item'] = False
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.convert", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3720
     *         return self.axes[0]
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert the whole block as one """
     *         kwargs['by_item'] = False
     */
      __pyx_tuple__726 = PyTuple_Pack(3, __pyx_n_s_self, __pyx_n_s_kwargs, __pyx_n_s_kwargs); if (unlikely(!__pyx_tuple__726)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3720; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__726);
      __Pyx_GIVEREF(__pyx_tuple__726);

      /* "pandas/internals.pyx":3720
     *         return self.axes[0]
     *
     *     def convert(self, **kwargs):             # <<<<<<<<<<<<<<
     *         """ convert the whole block as one """
     *         kwargs['by_item'] = False
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_27convert, 0, __pyx_n_s_SingleBlockManager_convert, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__727)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3720; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_convert, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3720; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__727 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__726, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_convert, 3720, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__727)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3720; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3721:         """ convert the whole block as one """

     3722:         kwargs['by_item'] = False

      /* "pandas/internals.pyx":3722
     *     def convert(self, **kwargs):
     *         """ convert the whole block as one """
     *         kwargs['by_item'] = False             # <<<<<<<<<<<<<<
     *         return self.apply('convert', **kwargs)
     *
     */
      if (unlikely(PyDict_SetItem(__pyx_v_kwargs, __pyx_n_s_by_item, Py_False) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3722; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3723:         return self.apply('convert', **kwargs)

      /* "pandas/internals.pyx":3723
     *         """ convert the whole block as one """
     *         kwargs['by_item'] = False
     *         return self.apply('convert', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_apply); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __pyx_v_kwargs;
      __Pyx_INCREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_tuple__124, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

      /* "pandas/internals.pyx":3723
     *         """ convert the whole block as one """
     *         kwargs['by_item'] = False
     *         return self.apply('convert', **kwargs)             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __pyx_tuple__124 = PyTuple_Pack(1, __pyx_n_s_convert); if (unlikely(!__pyx_tuple__124)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3723; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__124);
      __Pyx_GIVEREF(__pyx_tuple__124);

     3724:

     3725:     @property

      /* "pandas/internals.pyx":3725
     *         return self.apply('convert', **kwargs)
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def dtype(self):
     *         return self._values.dtype
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3725; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3725; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_dtype, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3726:     def dtype(self):

    /* "pandas/internals.pyx":3726
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self._values.dtype
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_29dtype(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_29dtype = {__Pyx_NAMESTR("dtype"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_29dtype, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_29dtype(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("dtype (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_28dtype(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_28dtype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("dtype", 0);

      /* "pandas/internals.pyx":3726
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self._values.dtype
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.dtype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3726
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self._values.dtype
     *
     */
      __pyx_tuple__728 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__728)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__728);
      __Pyx_GIVEREF(__pyx_tuple__728);

      /* "pandas/internals.pyx":3726
     *
     *     @property
     *     def dtype(self):             # <<<<<<<<<<<<<<
     *         return self._values.dtype
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_29dtype, 0, __pyx_n_s_SingleBlockManager_dtype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__729)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__729 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__728, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_dtype, 3726, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__729)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3726; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3727:         return self._values.dtype

      /* "pandas/internals.pyx":3727
     *     @property
     *     def dtype(self):
     *         return self._values.dtype             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3727; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3728:

     3729:     @property

      /* "pandas/internals.pyx":3729
     *         return self._values.dtype
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def ftype(self):
     *         return self._block.ftype
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3729; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_ftype_2, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3730:     def ftype(self):

    /* "pandas/internals.pyx":3730
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return self._block.ftype
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_31ftype(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_31ftype = {__Pyx_NAMESTR("ftype"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_31ftype, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_31ftype(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ftype (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_30ftype(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_30ftype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("ftype", 0);

      /* "pandas/internals.pyx":3730
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return self._block.ftype
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.ftype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3730
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return self._block.ftype
     *
     */
      __pyx_tuple__730 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__730)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__730);
      __Pyx_GIVEREF(__pyx_tuple__730);

      /* "pandas/internals.pyx":3730
     *
     *     @property
     *     def ftype(self):             # <<<<<<<<<<<<<<
     *         return self._block.ftype
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_31ftype, 0, __pyx_n_s_SingleBlockManager_ftype, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__731)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__731 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__730, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_ftype_2, 3730, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__731)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3730; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3731:         return self._block.ftype

      /* "pandas/internals.pyx":3731
     *     @property
     *     def ftype(self):
     *         return self._block.ftype             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3731; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_ftype_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3731; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3732:

     3733:     @property

      /* "pandas/internals.pyx":3733
     *         return self._block.ftype
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def values(self):
     *         return self._values.view()
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3733; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3733; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_values, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3734:     def values(self):

    /* "pandas/internals.pyx":3734
     *
     *     @property
     *     def values(self):             # <<<<<<<<<<<<<<
     *         return self._values.view()
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_33values(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_33values = {__Pyx_NAMESTR("values"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_33values, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_33values(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("values (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_32values(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_32values(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("values", 0);

      /* "pandas/internals.pyx":3734
     *
     *     @property
     *     def values(self):             # <<<<<<<<<<<<<<
     *         return self._values.view()
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.values", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3734
     *
     *     @property
     *     def values(self):             # <<<<<<<<<<<<<<
     *         return self._values.view()
     *
     */
      __pyx_tuple__732 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__732)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__732);
      __Pyx_GIVEREF(__pyx_tuple__732);

      /* "pandas/internals.pyx":3734
     *
     *     @property
     *     def values(self):             # <<<<<<<<<<<<<<
     *         return self._values.view()
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_33values, 0, __pyx_n_s_SingleBlockManager_values, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__733)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__733 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__732, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_values, 3734, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__733)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3734; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3735:         return self._values.view()

      /* "pandas/internals.pyx":3735
     *     @property
     *     def values(self):
     *         return self._values.view()             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3735; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_view); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3735; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3735; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     3736:

     3737:     @property

      /* "pandas/internals.pyx":3737
     *         return self._values.view()
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def itemsize(self):
     *         return self._values.itemsize
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3737; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_itemsize, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3738; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3738:     def itemsize(self):

    /* "pandas/internals.pyx":3738
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self._values.itemsize
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_35itemsize(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_35itemsize = {__Pyx_NAMESTR("itemsize"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_35itemsize, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_35itemsize(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("itemsize (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_34itemsize(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_34itemsize(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("itemsize", 0);

      /* "pandas/internals.pyx":3738
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self._values.itemsize
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager.itemsize", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3738
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self._values.itemsize
     *
     */
      __pyx_tuple__734 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__734)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3738; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__734);
      __Pyx_GIVEREF(__pyx_tuple__734);

      /* "pandas/internals.pyx":3738
     *
     *     @property
     *     def itemsize(self):             # <<<<<<<<<<<<<<
     *         return self._values.itemsize
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_35itemsize, 0, __pyx_n_s_SingleBlockManager_itemsize, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__735)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3738; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__735 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__734, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_itemsize, 3738, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__735)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3738; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3739:         return self._values.itemsize

      /* "pandas/internals.pyx":3739
     *     @property
     *     def itemsize(self):
     *         return self._values.itemsize             # <<<<<<<<<<<<<<
     *
     *     @property
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_values_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3739; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3740:

     3741:     @property

      /* "pandas/internals.pyx":3741
     *         return self._values.itemsize
     *
     *     @property             # <<<<<<<<<<<<<<
     *     def _can_hold_na(self):
     *         return self._block._can_hold_na
     */
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
      __Pyx_GIVEREF(__pyx_t_5);
      __pyx_t_5 = 0;
      __pyx_t_5 = PyObject_Call(__pyx_builtin_property, __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3741; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_can_hold_na, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3742:     def _can_hold_na(self):

    /* "pandas/internals.pyx":3742
     *
     *     @property
     *     def _can_hold_na(self):             # <<<<<<<<<<<<<<
     *         return self._block._can_hold_na
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_37_can_hold_na(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_37_can_hold_na = {__Pyx_NAMESTR("_can_hold_na"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_37_can_hold_na, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_37_can_hold_na(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_na (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_36_can_hold_na(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_36_can_hold_na(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_can_hold_na", 0);

      /* "pandas/internals.pyx":3742
     *
     *     @property
     *     def _can_hold_na(self):             # <<<<<<<<<<<<<<
     *         return self._block._can_hold_na
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals.SingleBlockManager._can_hold_na", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3742
     *
     *     @property
     *     def _can_hold_na(self):             # <<<<<<<<<<<<<<
     *         return self._block._can_hold_na
     *
     */
      __pyx_tuple__736 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__736)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__736);
      __Pyx_GIVEREF(__pyx_tuple__736);

      /* "pandas/internals.pyx":3742
     *
     *     @property
     *     def _can_hold_na(self):             # <<<<<<<<<<<<<<
     *         return self._block._can_hold_na
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_37_can_hold_na, 0, __pyx_n_s_SingleBlockManager__can_hold_na, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__737)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_codeobj__737 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__736, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_can_hold_na, 3742, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__737)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3742; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3743:         return self._block._can_hold_na

      /* "pandas/internals.pyx":3743
     *     @property
     *     def _can_hold_na(self):
     *         return self._block._can_hold_na             # <<<<<<<<<<<<<<
     *
     *     def is_consolidated(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_self, __pyx_n_s_block_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3743; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_can_hold_na); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3743; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3744:

     3745:     def is_consolidated(self):

    /* "pandas/internals.pyx":3745
     *         return self._block._can_hold_na
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_39is_consolidated(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_39is_consolidated = {__Pyx_NAMESTR("is_consolidated"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_39is_consolidated, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_39is_consolidated(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_consolidated (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_38is_consolidated(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_38is_consolidated(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("is_consolidated", 0);

      /* "pandas/internals.pyx":3745
     *         return self._block._can_hold_na
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */

      /* function exit code */
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3745
     *         return self._block._can_hold_na
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */
      __pyx_tuple__738 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__738)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3745; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__738);
      __Pyx_GIVEREF(__pyx_tuple__738);

      /* "pandas/internals.pyx":3745
     *         return self._block._can_hold_na
     *
     *     def is_consolidated(self):             # <<<<<<<<<<<<<<
     *         return True
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_39is_consolidated, 0, __pyx_n_s_SingleBlockManager_is_consolidat, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__739)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3745; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_is_consolidated_2, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3745; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__739 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__738, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_is_consolidated_2, 3745, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__739)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3745; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3746:         return True

      /* "pandas/internals.pyx":3746
     *
     *     def is_consolidated(self):
     *         return True             # <<<<<<<<<<<<<<
     *
     *     def _consolidate_check(self):
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(Py_True);
      __pyx_r = Py_True;
      goto __pyx_L0;

     3747:

     3748:     def _consolidate_check(self):

    /* "pandas/internals.pyx":3748
     *         return True
     *
     *     def _consolidate_check(self):             # <<<<<<<<<<<<<<
     *         pass
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_41_consolidate_check(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_41_consolidate_check = {__Pyx_NAMESTR("_consolidate_check"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_41_consolidate_check, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_41_consolidate_check(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_check (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_40_consolidate_check(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_40_consolidate_check(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_check", 0);

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3748
     *         return True
     *
     *     def _consolidate_check(self):             # <<<<<<<<<<<<<<
     *         pass
     *
     */
      __pyx_tuple__740 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__740)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__740);
      __Pyx_GIVEREF(__pyx_tuple__740);

      /* "pandas/internals.pyx":3748
     *         return True
     *
     *     def _consolidate_check(self):             # <<<<<<<<<<<<<<
     *         pass
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_41_consolidate_check, 0, __pyx_n_s_SingleBlockManager__consolidate, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__741)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_consolidate_check, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__741 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__740, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_consolidate_check, 3748, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__741)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3748; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3749:         pass

     3750:

     3751:     def _consolidate_inplace(self):

    /* "pandas/internals.pyx":3751
     *         pass
     *
     *     def _consolidate_inplace(self):             # <<<<<<<<<<<<<<
     *         pass
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_43_consolidate_inplace(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18SingleBlockManager_43_consolidate_inplace = {__Pyx_NAMESTR("_consolidate_inplace"), (PyCFunction)__pyx_pw_6pandas_9internals_18SingleBlockManager_43_consolidate_inplace, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18SingleBlockManager_43_consolidate_inplace(PyObject *__pyx_self, PyObject *__pyx_v_self) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_inplace (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18SingleBlockManager_42_consolidate_inplace(__pyx_self, ((PyObject *)__pyx_v_self));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18SingleBlockManager_42_consolidate_inplace(CYTHON_UNUSED PyObject *__pyx_self, CYTHON_UNUSED PyObject *__pyx_v_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate_inplace", 0);

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3751
     *         pass
     *
     *     def _consolidate_inplace(self):             # <<<<<<<<<<<<<<
     *         pass
     *
     */
      __pyx_tuple__742 = PyTuple_Pack(1, __pyx_n_s_self); if (unlikely(!__pyx_tuple__742)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__742);
      __Pyx_GIVEREF(__pyx_tuple__742);

      /* "pandas/internals.pyx":3751
     *         pass
     *
     *     def _consolidate_inplace(self):             # <<<<<<<<<<<<<<
     *         pass
     *
     */
      __pyx_t_5 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18SingleBlockManager_43_consolidate_inplace, 0, __pyx_n_s_SingleBlockManager__consolidate_2, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__743)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      if (PyObject_SetItem(__pyx_t_3, __pyx_n_s_consolidate_inplace, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_codeobj__743 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__742, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_consolidate_inplace, 3751, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__743)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3751; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3752:         pass

     3753:

     3754:

     3755: def construction_error(tot_items, block_shape, axes, e=None):

    /* "pandas/internals.pyx":3755
     *
     *
     * def construction_error(tot_items, block_shape, axes, e=None):             # <<<<<<<<<<<<<<
     *     """ raise a helpful message about our construction """
     *     passed = tuple(map(int, [tot_items] + list(block_shape)))
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_3construction_error(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_2construction_error[] = " raise a helpful message about our construction ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_3construction_error = {__Pyx_NAMESTR("construction_error"), (PyCFunction)__pyx_pw_6pandas_9internals_3construction_error, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_2construction_error)};
    static PyObject *__pyx_pw_6pandas_9internals_3construction_error(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_tot_items = 0;
      PyObject *__pyx_v_block_shape = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_v_e = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("construction_error (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tot_items,&__pyx_n_s_block_shape_2,&__pyx_n_s_axes,&__pyx_n_s_e,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)Py_None);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tot_items)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_block_shape_2)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("construction_error", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("construction_error", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_e);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "construction_error") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_tot_items = values[0];
        __pyx_v_block_shape = values[1];
        __pyx_v_axes = values[2];
        __pyx_v_e = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("construction_error", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.construction_error", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_2construction_error(__pyx_self, __pyx_v_tot_items, __pyx_v_block_shape, __pyx_v_axes, __pyx_v_e);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_2construction_error(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tot_items, PyObject *__pyx_v_block_shape, PyObject *__pyx_v_axes, PyObject *__pyx_v_e) {
      PyObject *__pyx_v_passed = NULL;
      PyObject *__pyx_v_implied = NULL;
      PyObject *__pyx_v_ax = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("construction_error", 0);

      /* "pandas/internals.pyx":3755
     *
     *
     * def construction_error(tot_items, block_shape, axes, e=None):             # <<<<<<<<<<<<<<
     *     """ raise a helpful message about our construction """
     *     passed = tuple(map(int, [tot_items] + list(block_shape)))
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_AddTraceback("pandas.internals.construction_error", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __Pyx_XDECREF(__pyx_v_passed);
      __Pyx_XDECREF(__pyx_v_implied);
      __Pyx_XDECREF(__pyx_v_ax);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3755
     *
     *
     * def construction_error(tot_items, block_shape, axes, e=None):             # <<<<<<<<<<<<<<
     *     """ raise a helpful message about our construction """
     *     passed = tuple(map(int, [tot_items] + list(block_shape)))
     */
      __pyx_tuple__744 = PyTuple_Pack(7, __pyx_n_s_tot_items, __pyx_n_s_block_shape_2, __pyx_n_s_axes, __pyx_n_s_e, __pyx_n_s_passed, __pyx_n_s_implied, __pyx_n_s_ax); if (unlikely(!__pyx_tuple__744)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__744);
      __Pyx_GIVEREF(__pyx_tuple__744);

      /* "pandas/internals.pyx":3755
     *
     *
     * def construction_error(tot_items, block_shape, axes, e=None):             # <<<<<<<<<<<<<<
     *     """ raise a helpful message about our construction """
     *     passed = tuple(map(int, [tot_items] + list(block_shape)))
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_3construction_error, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_construction_error, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__745 = (PyObject*)__Pyx_PyCode_New(4, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__744, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_construction_error, 3755, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__745)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3755; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3756:     """ raise a helpful message about our construction """

     3757:     passed = tuple(map(int, [tot_items] + list(block_shape)))

      /* "pandas/internals.pyx":3757
     * def construction_error(tot_items, block_shape, axes, e=None):
     *     """ raise a helpful message about our construction """
     *     passed = tuple(map(int, [tot_items] + list(block_shape)))             # <<<<<<<<<<<<<<
     *     implied = tuple(map(int, [len(ax) for ax in axes]))
     *     if passed == implied and e is not None:
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_map); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_tot_items);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_tot_items);
      __Pyx_GIVEREF(__pyx_v_tot_items);
      __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_block_shape);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_block_shape);
      __Pyx_GIVEREF(__pyx_v_block_shape);
      __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyNumber_Add(__pyx_t_2, __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_INCREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject *)((PyObject*)(&PyInt_Type))));
      __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_4, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3757; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_passed = ((PyObject*)__pyx_t_3);
      __pyx_t_3 = 0;

     3758:     implied = tuple(map(int, [len(ax) for ax in axes]))

      /* "pandas/internals.pyx":3758
     *     """ raise a helpful message about our construction """
     *     passed = tuple(map(int, [tot_items] + list(block_shape)))
     *     implied = tuple(map(int, [len(ax) for ax in axes]))             # <<<<<<<<<<<<<<
     *     if passed == implied and e is not None:
     *         raise e
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_map); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyList_CheckExact(__pyx_v_axes) || PyTuple_CheckExact(__pyx_v_axes)) {
        __pyx_t_1 = __pyx_v_axes; __Pyx_INCREF(__pyx_t_1); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_axes); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_5); __Pyx_INCREF(__pyx_t_2); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_6(__pyx_t_1);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_ax, __pyx_t_2);
        __pyx_t_2 = 0;
        __pyx_t_7 = PyObject_Length(__pyx_v_ax); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_2 = PyInt_FromSsize_t(__pyx_t_7); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (unlikely(__Pyx_ListComp_Append(__pyx_t_4, (PyObject*)__pyx_t_2))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)((PyObject*)(&PyInt_Type))));
      __Pyx_GIVEREF(((PyObject *)((PyObject*)(&PyInt_Type))));
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3758; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_implied = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

     3759:     if passed == implied and e is not None:

      /* "pandas/internals.pyx":3759
     *     passed = tuple(map(int, [tot_items] + list(block_shape)))
     *     implied = tuple(map(int, [len(ax) for ax in axes]))
     *     if passed == implied and e is not None:             # <<<<<<<<<<<<<<
     *         raise e
     *     raise ValueError("Shape of passed values is {0}, indices imply {1}".format(
     */
      __pyx_t_4 = PyObject_RichCompare(__pyx_v_passed, __pyx_v_implied, Py_EQ); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3759; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      if (__pyx_t_8) {
        __pyx_t_9 = (__pyx_v_e != Py_None);
        __pyx_t_10 = __pyx_t_9;
      } else {
        __pyx_t_10 = __pyx_t_8;
      }
      if (__pyx_t_10) {

     3760:         raise e

        /* "pandas/internals.pyx":3760
     *     implied = tuple(map(int, [len(ax) for ax in axes]))
     *     if passed == implied and e is not None:
     *         raise e             # <<<<<<<<<<<<<<
     *     raise ValueError("Shape of passed values is {0}, indices imply {1}".format(
     *         passed,implied))
     */
        __Pyx_Raise(__pyx_v_e, 0, 0, 0);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3760; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }

     3761:     raise ValueError("Shape of passed values is {0}, indices imply {1}".format(

      /* "pandas/internals.pyx":3761
     *     if passed == implied and e is not None:
     *         raise e
     *     raise ValueError("Shape of passed values is {0}, indices imply {1}".format(             # <<<<<<<<<<<<<<
     *         passed,implied))
     *
     */
      __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_kp_s_Shape_of_passed_values_is_0_indi, __pyx_n_s_format); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);

      /* "pandas/internals.pyx":3762
     *         raise e
     *     raise ValueError("Shape of passed values is {0}, indices imply {1}".format(
     *         passed,implied))             # <<<<<<<<<<<<<<
     *
     * def create_block_manager_from_blocks(blocks, axes):
     */
      __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_passed);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_passed);
      __Pyx_GIVEREF(__pyx_v_passed);
      __Pyx_INCREF(__pyx_v_implied);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_implied);
      __Pyx_GIVEREF(__pyx_v_implied);

      /* "pandas/internals.pyx":3761
     *     if passed == implied and e is not None:
     *         raise e
     *     raise ValueError("Shape of passed values is {0}, indices imply {1}".format(             # <<<<<<<<<<<<<<
     *         passed,implied))
     *
     */
      __pyx_t_3 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = PyObject_Call(__pyx_builtin_ValueError, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_Raise(__pyx_t_3, 0, 0, 0);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3761; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3762:         passed,implied))

     3763:

     3764: def create_block_manager_from_blocks(blocks, axes):

    /* "pandas/internals.pyx":3764
     *         passed,implied))
     *
     * def create_block_manager_from_blocks(blocks, axes):             # <<<<<<<<<<<<<<
     *     try:
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_5create_block_manager_from_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_5create_block_manager_from_blocks = {__Pyx_NAMESTR("create_block_manager_from_blocks"), (PyCFunction)__pyx_pw_6pandas_9internals_5create_block_manager_from_blocks, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_5create_block_manager_from_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("create_block_manager_from_blocks (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_blocks,&__pyx_n_s_axes,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("create_block_manager_from_blocks", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3764; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create_block_manager_from_blocks") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3764; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_blocks = values[0];
        __pyx_v_axes = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("create_block_manager_from_blocks", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3764; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.create_block_manager_from_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_4create_block_manager_from_blocks(__pyx_self, __pyx_v_blocks, __pyx_v_axes);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_32create_block_manager_from_blocks_2generator9(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":3764
     *         passed,implied))
     *
     * def create_block_manager_from_blocks(blocks, axes):             # <<<<<<<<<<<<<<
     *     try:
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_4create_block_manager_from_blocks(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_blocks, PyObject *__pyx_v_axes) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_26_create_block_manager_from_blocks *__pyx_cur_scope;
      PyObject *__pyx_v_placement = NULL;
      PyObject *__pyx_v_mgr = NULL;
      PyObject *__pyx_v_e = NULL;
      PyObject *__pyx_v_tot_items = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("create_block_manager_from_blocks", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_26_create_block_manager_from_blocks *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_26_create_block_manager_from_blocks(__pyx_ptype_6pandas_9internals___pyx_scope_struct_26_create_block_manager_from_blocks, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_blocks = __pyx_v_blocks;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_blocks);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_blocks);

      /* "pandas/internals.pyx":3764
     *         passed,implied))
     *
     * def create_block_manager_from_blocks(blocks, axes):             # <<<<<<<<<<<<<<
     *     try:
     *
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_XDECREF(__pyx_t_15);
      __Pyx_AddTraceback("pandas.internals.create_block_manager_from_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_placement);
      __Pyx_XDECREF(__pyx_v_mgr);
      __Pyx_XDECREF(__pyx_v_e);
      __Pyx_XDECREF(__pyx_v_tot_items);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3764
     *         passed,implied))
     *
     * def create_block_manager_from_blocks(blocks, axes):             # <<<<<<<<<<<<<<
     *     try:
     *
     */
      __pyx_tuple__746 = PyTuple_Pack(9, __pyx_n_s_blocks, __pyx_n_s_axes, __pyx_n_s_placement, __pyx_n_s_mgr, __pyx_n_s_e, __pyx_n_s_tot_items, __pyx_n_s_b, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__746)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__746);
      __Pyx_GIVEREF(__pyx_tuple__746);

      /* "pandas/internals.pyx":3764
     *         passed,implied))
     *
     * def create_block_manager_from_blocks(blocks, axes):             # <<<<<<<<<<<<<<
     *     try:
     *
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_5create_block_manager_from_blocks, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_create_block_manager_from_blocks, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__747 = (PyObject*)__Pyx_PyCode_New(2, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__746, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_create_block_manager_from_blocks, 3764, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__747)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3764; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":3764
     *         passed,implied))
     *
     * def create_block_manager_from_blocks(blocks, axes):             # <<<<<<<<<<<<<<
     *     try:
     *
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_26_create_block_manager_from_blocks {
      PyObject_HEAD
      PyObject *__pyx_v_blocks;
    };

     3765:     try:

      /* "pandas/internals.pyx":3765
     *
     * def create_block_manager_from_blocks(blocks, axes):
     *     try:             # <<<<<<<<<<<<<<
     *
     *         # if we are passed values, make the blocks
     */
      {
        /*try:*/ {

     3766:

     3767:         # if we are passed values, make the blocks

     3768:         if len(blocks) == 1 and not isinstance(blocks[0], Block):

          /* "pandas/internals.pyx":3768
     *
     *         # if we are passed values, make the blocks
     *         if len(blocks) == 1 and not isinstance(blocks[0], Block):             # <<<<<<<<<<<<<<
     *             placement = None if axes[0].is_unique else np.arange(len(axes[0]))
     *             blocks = [
     */
          __pyx_t_4 = __pyx_cur_scope->__pyx_v_blocks;
          __Pyx_INCREF(__pyx_t_4);
          __pyx_t_5 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3768; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_6 = ((__pyx_t_5 == 1) != 0);
          if (__pyx_t_6) {
            __pyx_t_4 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_blocks, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3768; __pyx_clineno = __LINE__; goto __pyx_L3_error;};
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_Block); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3768; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_8 = PyObject_IsInstance(__pyx_t_4, __pyx_t_7); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3768; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __pyx_t_9 = ((!(__pyx_t_8 != 0)) != 0);
            __pyx_t_8 = __pyx_t_9;
          } else {
            __pyx_t_8 = __pyx_t_6;
          }
          if (__pyx_t_8) {

     3769:             placement = None if axes[0].is_unique else np.arange(len(axes[0]))

            /* "pandas/internals.pyx":3769
     *         # if we are passed values, make the blocks
     *         if len(blocks) == 1 and not isinstance(blocks[0], Block):
     *             placement = None if axes[0].is_unique else np.arange(len(axes[0]))             # <<<<<<<<<<<<<<
     *             blocks = [
     *                 make_block(blocks[0], axes[0], axes[0], placement=placement)]
     */
            __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_axes, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;};
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
            __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_10); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            if (__pyx_t_8) {
              __Pyx_INCREF(Py_None);
              __pyx_t_7 = Py_None;
            } else {
              __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
              __Pyx_GOTREF(__pyx_t_10);
              __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_arange); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
              __Pyx_GOTREF(__pyx_t_4);
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              __pyx_t_10 = __Pyx_GetItemInt(__pyx_v_axes, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;};
              __Pyx_GOTREF(__pyx_t_10);
              __pyx_t_5 = PyObject_Length(__pyx_t_10); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
              __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
              __pyx_t_10 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
              __Pyx_GOTREF(__pyx_t_10);
              __pyx_t_11 = PyTuple_New(1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
              __Pyx_GOTREF(__pyx_t_11);
              PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_t_10);
              __Pyx_GIVEREF(__pyx_t_10);
              __pyx_t_10 = 0;
              __pyx_t_10 = PyObject_Call(__pyx_t_4, __pyx_t_11, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3769; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
              __Pyx_GOTREF(__pyx_t_10);
              __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
              __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
              __pyx_t_7 = __pyx_t_10;
              __pyx_t_10 = 0;
            }
            __pyx_v_placement = __pyx_t_7;
            __pyx_t_7 = 0;

     3770:             blocks = [

            /* "pandas/internals.pyx":3770
     *         if len(blocks) == 1 and not isinstance(blocks[0], Block):
     *             placement = None if axes[0].is_unique else np.arange(len(axes[0]))
     *             blocks = [             # <<<<<<<<<<<<<<
     *                 make_block(blocks[0], axes[0], axes[0], placement=placement)]
     *
     */
            __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3770; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_GOTREF(__pyx_t_4);
            PyList_SET_ITEM(__pyx_t_4, 0, __pyx_t_11);
            __Pyx_GIVEREF(__pyx_t_11);
            __pyx_t_11 = 0;
            __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_blocks);
            __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_blocks, __pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_4);
            __pyx_t_4 = 0;
            goto __pyx_L11;
          }
          __pyx_L11:;

     3771:                 make_block(blocks[0], axes[0], axes[0], placement=placement)]

            /* "pandas/internals.pyx":3771
     *             placement = None if axes[0].is_unique else np.arange(len(axes[0]))
     *             blocks = [
     *                 make_block(blocks[0], axes[0], axes[0], placement=placement)]             # <<<<<<<<<<<<<<
     *
     *         mgr = BlockManager(blocks, axes)
     */
            __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_GOTREF(__pyx_t_7);
            __pyx_t_10 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_blocks, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;};
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_11 = __Pyx_GetItemInt(__pyx_v_axes, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;};
            __Pyx_GOTREF(__pyx_t_11);
            __pyx_t_4 = __Pyx_GetItemInt(__pyx_v_axes, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;};
            __Pyx_GOTREF(__pyx_t_4);
            __pyx_t_12 = PyTuple_New(3); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_GOTREF(__pyx_t_12);
            PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10);
            __Pyx_GIVEREF(__pyx_t_10);
            PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_11);
            __Pyx_GIVEREF(__pyx_t_11);
            PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_t_4);
            __Pyx_GIVEREF(__pyx_t_4);
            __pyx_t_10 = 0;
            __pyx_t_11 = 0;
            __pyx_t_4 = 0;
            __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_GOTREF(__pyx_t_4);
            if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __pyx_t_11 = PyObject_Call(__pyx_t_7, __pyx_t_12, __pyx_t_4); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3771; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            __Pyx_GOTREF(__pyx_t_11);
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
            __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
            __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     3772:

     3773:         mgr = BlockManager(blocks, axes)

          /* "pandas/internals.pyx":3773
     *                 make_block(blocks[0], axes[0], axes[0], placement=placement)]
     *
     *         mgr = BlockManager(blocks, axes)             # <<<<<<<<<<<<<<
     *         mgr._consolidate_inplace()
     *         return mgr
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_BlockManager); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3773; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_11 = PyTuple_New(2); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3773; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_cur_scope->__pyx_v_blocks);
          PyTuple_SET_ITEM(__pyx_t_11, 0, __pyx_cur_scope->__pyx_v_blocks);
          __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_blocks);
          __Pyx_INCREF(__pyx_v_axes);
          PyTuple_SET_ITEM(__pyx_t_11, 1, __pyx_v_axes);
          __Pyx_GIVEREF(__pyx_v_axes);
          __pyx_t_12 = PyObject_Call(__pyx_t_4, __pyx_t_11, NULL); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3773; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_v_mgr = __pyx_t_12;
          __pyx_t_12 = 0;

     3774:         mgr._consolidate_inplace()

          /* "pandas/internals.pyx":3774
     *
     *         mgr = BlockManager(blocks, axes)
     *         mgr._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return mgr
     *
     */
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_v_mgr, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3774; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __pyx_t_11 = PyObject_Call(__pyx_t_12, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3774; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;

     3775:         return mgr

          /* "pandas/internals.pyx":3775
     *         mgr = BlockManager(blocks, axes)
     *         mgr._consolidate_inplace()
     *         return mgr             # <<<<<<<<<<<<<<
     *
     *     except (ValueError) as e:
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_mgr);
          __pyx_r = __pyx_v_mgr;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_XDECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_12); __pyx_t_12 = 0;
        __Pyx_XDECREF(__pyx_t_11); __pyx_t_11 = 0;

     3776:

     3777:     except (ValueError) as e:

        /* "pandas/internals.pyx":3777
     *         return mgr
     *
     *     except (ValueError) as e:             # <<<<<<<<<<<<<<
     *         blocks = [getattr(b, 'values', b) for b in blocks]
     *         tot_items = sum(b.shape[0] for b in blocks)
     */
        __pyx_t_13 = PyErr_ExceptionMatches(__pyx_builtin_ValueError);
        if (__pyx_t_13) {
          __Pyx_AddTraceback("pandas.internals.create_block_manager_from_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_11, &__pyx_t_12, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3777; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_t_12);
          __pyx_v_e = __pyx_t_12;

     3778:         blocks = [getattr(b, 'values', b) for b in blocks]

          /* "pandas/internals.pyx":3778
     *
     *     except (ValueError) as e:
     *         blocks = [getattr(b, 'values', b) for b in blocks]             # <<<<<<<<<<<<<<
     *         tot_items = sum(b.shape[0] for b in blocks)
     *         construction_error(tot_items, blocks[0].shape[1:], axes, e)
     */
          __pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_7);
          if (PyList_CheckExact(__pyx_cur_scope->__pyx_v_blocks) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_v_blocks)) {
            __pyx_t_10 = __pyx_cur_scope->__pyx_v_blocks; __Pyx_INCREF(__pyx_t_10); __pyx_t_5 = 0;
            __pyx_t_14 = NULL;
          } else {
            __pyx_t_5 = -1; __pyx_t_10 = PyObject_GetIter(__pyx_cur_scope->__pyx_v_blocks); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __pyx_t_14 = Py_TYPE(__pyx_t_10)->tp_iternext;
          }
          for (;;) {
            if (!__pyx_t_14 && PyList_CheckExact(__pyx_t_10)) {
              if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_10)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_15 = PyList_GET_ITEM(__pyx_t_10, __pyx_t_5); __Pyx_INCREF(__pyx_t_15); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
              #else
              __pyx_t_15 = PySequence_ITEM(__pyx_t_10, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
              #endif
            } else if (!__pyx_t_14 && PyTuple_CheckExact(__pyx_t_10)) {
              if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_10)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_15 = PyTuple_GET_ITEM(__pyx_t_10, __pyx_t_5); __Pyx_INCREF(__pyx_t_15); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
              #else
              __pyx_t_15 = PySequence_ITEM(__pyx_t_10, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
              #endif
            } else {
              __pyx_t_15 = __pyx_t_14(__pyx_t_10);
              if (unlikely(!__pyx_t_15)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_15);
            }
            __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_15);
            __pyx_t_15 = 0;
            __pyx_t_15 = __Pyx_GetAttr3(__pyx_v_b, __pyx_n_s_values, __pyx_v_b); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
            __Pyx_GOTREF(__pyx_t_15);
            if (unlikely(__Pyx_ListComp_Append(__pyx_t_7, (PyObject*)__pyx_t_15))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3778; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
            __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          }
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_GOTREF(__pyx_cur_scope->__pyx_v_blocks);
          __Pyx_DECREF_SET(__pyx_cur_scope->__pyx_v_blocks, __pyx_t_7);
          __Pyx_GIVEREF(__pyx_t_7);
          __pyx_t_7 = 0;

     3779:         tot_items = sum(b.shape[0] for b in blocks)

    /* "pandas/internals.pyx":3779
     *     except (ValueError) as e:
     *         blocks = [getattr(b, 'values', b) for b in blocks]
     *         tot_items = sum(b.shape[0] for b in blocks)             # <<<<<<<<<<<<<<
     *         construction_error(tot_items, blocks[0].shape[1:], axes, e)
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_32create_block_manager_from_blocks_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_27_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_27_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_27_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_27_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_26_create_block_manager_from_blocks *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_32create_block_manager_from_blocks_2generator9, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.create_block_manager_from_blocks.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_32create_block_manager_from_blocks_2generator9(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks)) { __Pyx_RaiseClosureNameError("blocks"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      if (PyList_CheckExact(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks) || PyTuple_CheckExact(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks)) {
        __pyx_t_1 = __pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
        __pyx_t_3 = NULL;
      } else {
        __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_blocks); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_3 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_3 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_3(__pyx_t_1);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_b);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_b, __pyx_t_4);
        __Pyx_GIVEREF(__pyx_t_4);
        __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_cur_scope->__pyx_v_b, __pyx_n_s_shape); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = __Pyx_GetItemInt(__pyx_t_4, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        __Pyx_XGIVEREF(__pyx_t_1);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_1;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_3;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L6_resume_from_yield:;
        __pyx_t_1 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_1);
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

          /* "pandas/internals.pyx":3779
     *     except (ValueError) as e:
     *         blocks = [getattr(b, 'values', b) for b in blocks]
     *         tot_items = sum(b.shape[0] for b in blocks)             # <<<<<<<<<<<<<<
     *         construction_error(tot_items, blocks[0].shape[1:], axes, e)
     *
     */
          __pyx_t_7 = __pyx_pf_6pandas_9internals_32create_block_manager_from_blocks_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_10 = PyTuple_New(1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_10, 0, __pyx_t_7);
          __Pyx_GIVEREF(__pyx_t_7);
          __pyx_t_7 = 0;
          __pyx_t_7 = PyObject_Call(__pyx_builtin_sum, __pyx_t_10, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3779; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_v_tot_items = __pyx_t_7;
          __pyx_t_7 = 0;

    /* "pandas/internals.pyx":3779
     *     except (ValueError) as e:
     *         blocks = [getattr(b, 'values', b) for b in blocks]
     *         tot_items = sum(b.shape[0] for b in blocks)             # <<<<<<<<<<<<<<
     *         construction_error(tot_items, blocks[0].shape[1:], axes, e)
     *
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_27_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_26_create_block_manager_from_blocks *__pyx_outer_scope;
      PyObject *__pyx_v_b;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     3780:         construction_error(tot_items, blocks[0].shape[1:], axes, e)

          /* "pandas/internals.pyx":3780
     *         blocks = [getattr(b, 'values', b) for b in blocks]
     *         tot_items = sum(b.shape[0] for b in blocks)
     *         construction_error(tot_items, blocks[0].shape[1:], axes, e)             # <<<<<<<<<<<<<<
     *
     *
     */
          __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_construction_error); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3780; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_10 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_blocks, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_10 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3780; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;};
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_15 = __Pyx_PyObject_GetAttrStr(__pyx_t_10, __pyx_n_s_shape); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3780; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_t_10 = __Pyx_PyObject_GetSlice(__pyx_t_15, 1, 0, NULL, NULL, &__pyx_slice__125, 1, 0, 1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3780; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __pyx_t_15 = PyTuple_New(4); if (unlikely(!__pyx_t_15)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3780; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_15);
          __Pyx_INCREF(__pyx_v_tot_items);
          PyTuple_SET_ITEM(__pyx_t_15, 0, __pyx_v_tot_items);
          __Pyx_GIVEREF(__pyx_v_tot_items);
          PyTuple_SET_ITEM(__pyx_t_15, 1, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          __Pyx_INCREF(__pyx_v_axes);
          PyTuple_SET_ITEM(__pyx_t_15, 2, __pyx_v_axes);
          __Pyx_GIVEREF(__pyx_v_axes);
          __Pyx_INCREF(__pyx_v_e);
          PyTuple_SET_ITEM(__pyx_t_15, 3, __pyx_v_e);
          __Pyx_GIVEREF(__pyx_v_e);
          __pyx_t_10 = 0;
          __pyx_t_10 = PyObject_Call(__pyx_t_7, __pyx_t_15, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3780; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_15); __pyx_t_15 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          goto __pyx_L4_exception_handled;
        }
        goto __pyx_L5_except_error;
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

      /* "pandas/internals.pyx":3780
     *         blocks = [getattr(b, 'values', b) for b in blocks]
     *         tot_items = sum(b.shape[0] for b in blocks)
     *         construction_error(tot_items, blocks[0].shape[1:], axes, e)             # <<<<<<<<<<<<<<
     *
     *
     */
      __pyx_slice__125 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__125)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3780; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__125);
      __Pyx_GIVEREF(__pyx_slice__125);

     3781:

     3782:

     3783: def create_block_manager_from_arrays(arrays, names, axes):

    /* "pandas/internals.pyx":3783
     *
     *
     * def create_block_manager_from_arrays(arrays, names, axes):             # <<<<<<<<<<<<<<
     *     try:
     *         blocks = form_blocks(arrays, names, axes)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_7create_block_manager_from_arrays(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_7create_block_manager_from_arrays = {__Pyx_NAMESTR("create_block_manager_from_arrays"), (PyCFunction)__pyx_pw_6pandas_9internals_7create_block_manager_from_arrays, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_7create_block_manager_from_arrays(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_arrays = 0;
      PyObject *__pyx_v_names = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("create_block_manager_from_arrays (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_arrays,&__pyx_n_s_names,&__pyx_n_s_axes,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_arrays)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_names)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("create_block_manager_from_arrays", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("create_block_manager_from_arrays", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "create_block_manager_from_arrays") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_arrays = values[0];
        __pyx_v_names = values[1];
        __pyx_v_axes = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("create_block_manager_from_arrays", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.create_block_manager_from_arrays", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_6create_block_manager_from_arrays(__pyx_self, __pyx_v_arrays, __pyx_v_names, __pyx_v_axes);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_6create_block_manager_from_arrays(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arrays, PyObject *__pyx_v_names, PyObject *__pyx_v_axes) {
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_v_mgr = NULL;
      PyObject *__pyx_v_e = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("create_block_manager_from_arrays", 0);

      /* "pandas/internals.pyx":3783
     *
     *
     * def create_block_manager_from_arrays(arrays, names, axes):             # <<<<<<<<<<<<<<
     *     try:
     *         blocks = form_blocks(arrays, names, axes)
     */

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_XDECREF(__pyx_t_12);
      __Pyx_AddTraceback("pandas.internals.create_block_manager_from_arrays", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_mgr);
      __Pyx_XDECREF(__pyx_v_e);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3783
     *
     *
     * def create_block_manager_from_arrays(arrays, names, axes):             # <<<<<<<<<<<<<<
     *     try:
     *         blocks = form_blocks(arrays, names, axes)
     */
      __pyx_tuple__748 = PyTuple_Pack(6, __pyx_n_s_arrays, __pyx_n_s_names, __pyx_n_s_axes, __pyx_n_s_blocks, __pyx_n_s_mgr, __pyx_n_s_e); if (unlikely(!__pyx_tuple__748)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__748);
      __Pyx_GIVEREF(__pyx_tuple__748);

      /* "pandas/internals.pyx":3783
     *
     *
     * def create_block_manager_from_arrays(arrays, names, axes):             # <<<<<<<<<<<<<<
     *     try:
     *         blocks = form_blocks(arrays, names, axes)
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_7create_block_manager_from_arrays, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_create_block_manager_from_arrays, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__749 = (PyObject*)__Pyx_PyCode_New(3, 0, 6, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__748, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_create_block_manager_from_arrays, 3783, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__749)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3783; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3784:     try:

      /* "pandas/internals.pyx":3784
     *
     * def create_block_manager_from_arrays(arrays, names, axes):
     *     try:             # <<<<<<<<<<<<<<
     *         blocks = form_blocks(arrays, names, axes)
     *         mgr = BlockManager(blocks, axes)
     */
      {
        /*try:*/ {

     3785:         blocks = form_blocks(arrays, names, axes)

          /* "pandas/internals.pyx":3785
     * def create_block_manager_from_arrays(arrays, names, axes):
     *     try:
     *         blocks = form_blocks(arrays, names, axes)             # <<<<<<<<<<<<<<
     *         mgr = BlockManager(blocks, axes)
     *         mgr._consolidate_inplace()
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_form_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3785; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3785; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_arrays);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_arrays);
          __Pyx_GIVEREF(__pyx_v_arrays);
          __Pyx_INCREF(__pyx_v_names);
          PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_names);
          __Pyx_GIVEREF(__pyx_v_names);
          __Pyx_INCREF(__pyx_v_axes);
          PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_axes);
          __Pyx_GIVEREF(__pyx_v_axes);
          __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_5, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3785; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_v_blocks = __pyx_t_6;
          __pyx_t_6 = 0;

     3786:         mgr = BlockManager(blocks, axes)

          /* "pandas/internals.pyx":3786
     *     try:
     *         blocks = form_blocks(arrays, names, axes)
     *         mgr = BlockManager(blocks, axes)             # <<<<<<<<<<<<<<
     *         mgr._consolidate_inplace()
     *         return mgr
     */
          __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_BlockManager); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3786; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3786; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_blocks);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_blocks);
          __Pyx_GIVEREF(__pyx_v_blocks);
          __Pyx_INCREF(__pyx_v_axes);
          PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_axes);
          __Pyx_GIVEREF(__pyx_v_axes);
          __pyx_t_4 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3786; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_v_mgr = __pyx_t_4;
          __pyx_t_4 = 0;

     3787:         mgr._consolidate_inplace()

          /* "pandas/internals.pyx":3787
     *         blocks = form_blocks(arrays, names, axes)
     *         mgr = BlockManager(blocks, axes)
     *         mgr._consolidate_inplace()             # <<<<<<<<<<<<<<
     *         return mgr
     *     except (ValueError) as e:
     */
          __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_mgr, __pyx_n_s_consolidate_inplace); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3787; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3787; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

     3788:         return mgr

          /* "pandas/internals.pyx":3788
     *         mgr = BlockManager(blocks, axes)
     *         mgr._consolidate_inplace()
     *         return mgr             # <<<<<<<<<<<<<<
     *     except (ValueError) as e:
     *         construction_error(len(arrays), arrays[0].shape[1:], axes, e)
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_mgr);
          __pyx_r = __pyx_v_mgr;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;

     3789:     except (ValueError) as e:

        /* "pandas/internals.pyx":3789
     *         mgr._consolidate_inplace()
     *         return mgr
     *     except (ValueError) as e:             # <<<<<<<<<<<<<<
     *         construction_error(len(arrays), arrays[0].shape[1:], axes, e)
     *
     */
        __pyx_t_7 = PyErr_ExceptionMatches(__pyx_builtin_ValueError);
        if (__pyx_t_7) {
          __Pyx_AddTraceback("pandas.internals.create_block_manager_from_arrays", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_5, &__pyx_t_4, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3789; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_4);
          __pyx_v_e = __pyx_t_4;

     3790:         construction_error(len(arrays), arrays[0].shape[1:], axes, e)

          /* "pandas/internals.pyx":3790
     *         return mgr
     *     except (ValueError) as e:
     *         construction_error(len(arrays), arrays[0].shape[1:], axes, e)             # <<<<<<<<<<<<<<
     *
     *
     */
          __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_construction_error); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_9 = PyObject_Length(__pyx_v_arrays); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __pyx_t_10 = PyInt_FromSsize_t(__pyx_t_9); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_11 = __Pyx_GetItemInt(__pyx_v_arrays, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_11 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;};
          __Pyx_GOTREF(__pyx_t_11);
          __pyx_t_12 = __Pyx_PyObject_GetAttrStr(__pyx_t_11, __pyx_n_s_shape); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_11 = __Pyx_PyObject_GetSlice(__pyx_t_12, 1, 0, NULL, NULL, &__pyx_slice__126, 1, 0, 1); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __pyx_t_12 = PyTuple_New(4); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_12);
          PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_t_10);
          __Pyx_GIVEREF(__pyx_t_10);
          PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_t_11);
          __Pyx_GIVEREF(__pyx_t_11);
          __Pyx_INCREF(__pyx_v_axes);
          PyTuple_SET_ITEM(__pyx_t_12, 2, __pyx_v_axes);
          __Pyx_GIVEREF(__pyx_v_axes);
          __Pyx_INCREF(__pyx_v_e);
          PyTuple_SET_ITEM(__pyx_t_12, 3, __pyx_v_e);
          __Pyx_GIVEREF(__pyx_v_e);
          __pyx_t_10 = 0;
          __pyx_t_11 = 0;
          __pyx_t_11 = PyObject_Call(__pyx_t_8, __pyx_t_12, NULL); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L4_exception_handled;
        }
        goto __pyx_L5_except_error;
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

      /* "pandas/internals.pyx":3790
     *         return mgr
     *     except (ValueError) as e:
     *         construction_error(len(arrays), arrays[0].shape[1:], axes, e)             # <<<<<<<<<<<<<<
     *
     *
     */
      __pyx_slice__126 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__126)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3790; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__126);
      __Pyx_GIVEREF(__pyx_slice__126);

     3791:

     3792:

     3793: def maybe_create_block_in_items_map(im, block):

    /* "pandas/internals.pyx":3793
     *
     *
     * def maybe_create_block_in_items_map(im, block):             # <<<<<<<<<<<<<<
     *     """ create/return the block in an items_map """
     *     try:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_9maybe_create_block_in_items_map(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_8maybe_create_block_in_items_map[] = " create/return the block in an items_map ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_9maybe_create_block_in_items_map = {__Pyx_NAMESTR("maybe_create_block_in_items_map"), (PyCFunction)__pyx_pw_6pandas_9internals_9maybe_create_block_in_items_map, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_8maybe_create_block_in_items_map)};
    static PyObject *__pyx_pw_6pandas_9internals_9maybe_create_block_in_items_map(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_im = 0;
      PyObject *__pyx_v_block = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("maybe_create_block_in_items_map (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_im,&__pyx_n_s_block,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_im)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_block)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("maybe_create_block_in_items_map", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3793; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "maybe_create_block_in_items_map") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3793; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_im = values[0];
        __pyx_v_block = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("maybe_create_block_in_items_map", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3793; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.maybe_create_block_in_items_map", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_8maybe_create_block_in_items_map(__pyx_self, __pyx_v_im, __pyx_v_block);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_8maybe_create_block_in_items_map(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_im, PyObject *__pyx_v_block) {
      PyObject *__pyx_v_l = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("maybe_create_block_in_items_map", 0);

      /* "pandas/internals.pyx":3793
     *
     *
     * def maybe_create_block_in_items_map(im, block):             # <<<<<<<<<<<<<<
     *     """ create/return the block in an items_map """
     *     try:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals.maybe_create_block_in_items_map", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_l);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3793
     *
     *
     * def maybe_create_block_in_items_map(im, block):             # <<<<<<<<<<<<<<
     *     """ create/return the block in an items_map """
     *     try:
     */
      __pyx_tuple__750 = PyTuple_Pack(3, __pyx_n_s_im, __pyx_n_s_block, __pyx_n_s_l); if (unlikely(!__pyx_tuple__750)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__750);
      __Pyx_GIVEREF(__pyx_tuple__750);

      /* "pandas/internals.pyx":3793
     *
     *
     * def maybe_create_block_in_items_map(im, block):             # <<<<<<<<<<<<<<
     *     """ create/return the block in an items_map """
     *     try:
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_9maybe_create_block_in_items_map, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_maybe_create_block_in_items_map, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__751 = (PyObject*)__Pyx_PyCode_New(2, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__750, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_maybe_create_block_in_items_map, 3793, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__751)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3793; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3794:     """ create/return the block in an items_map """

     3795:     try:

      /* "pandas/internals.pyx":3795
     * def maybe_create_block_in_items_map(im, block):
     *     """ create/return the block in an items_map """
     *     try:             # <<<<<<<<<<<<<<
     *         return im[block]
     *     except:
     */
      {
        /*try:*/ {

     3796:         return im[block]

          /* "pandas/internals.pyx":3796
     *     """ create/return the block in an items_map """
     *     try:
     *         return im[block]             # <<<<<<<<<<<<<<
     *     except:
     *         im[block] = l = [None] * len(block.items)
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_4 = PyObject_GetItem(__pyx_v_im, __pyx_v_block); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3796; __pyx_clineno = __LINE__; goto __pyx_L3_error;};
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_r = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L7_try_return;
        }
        __Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
        goto __pyx_L10_try_end;
        __pyx_L3_error:;
        __Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;

     3797:     except:

        /* "pandas/internals.pyx":3797
     *     try:
     *         return im[block]
     *     except:             # <<<<<<<<<<<<<<
     *         im[block] = l = [None] * len(block.items)
     *     return l
     */
        /*except:*/ {
          __Pyx_AddTraceback("pandas.internals.maybe_create_block_in_items_map", __pyx_clineno, __pyx_lineno, __pyx_filename);
          if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_5, &__pyx_t_6) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3797; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_GOTREF(__pyx_t_6);

     3798:         im[block] = l = [None] * len(block.items)

          /* "pandas/internals.pyx":3798
     *         return im[block]
     *     except:
     *         im[block] = l = [None] * len(block.items)             # <<<<<<<<<<<<<<
     *     return l
     *
     */
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3798; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_8 = PyObject_Length(__pyx_t_7); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3798; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_7 = PyList_New(1 * ((__pyx_t_8<0) ? 0:__pyx_t_8)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3798; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_GOTREF(__pyx_t_7);
          { Py_ssize_t __pyx_temp;
            for (__pyx_temp=0; __pyx_temp < __pyx_t_8; __pyx_temp++) {
              __Pyx_INCREF(Py_None);
              PyList_SET_ITEM(__pyx_t_7, __pyx_temp, Py_None);
              __Pyx_GIVEREF(Py_None);
            }
          }
          if (unlikely(PyObject_SetItem(__pyx_v_im, __pyx_v_block, __pyx_t_7) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3798; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
          __Pyx_INCREF(__pyx_t_7);
          __pyx_v_l = __pyx_t_7;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L4_exception_handled;
        }
        __pyx_L5_except_error:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L1_error;
        __pyx_L7_try_return:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        goto __pyx_L0;
        __pyx_L4_exception_handled:;
        __Pyx_XGIVEREF(__pyx_t_1);
        __Pyx_XGIVEREF(__pyx_t_2);
        __Pyx_XGIVEREF(__pyx_t_3);
        __Pyx_ExceptionReset(__pyx_t_1, __pyx_t_2, __pyx_t_3);
        __pyx_L10_try_end:;
      }

     3799:     return l

      /* "pandas/internals.pyx":3799
     *     except:
     *         im[block] = l = [None] * len(block.items)
     *     return l             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_l);
      __pyx_r = __pyx_v_l;
      goto __pyx_L0;

     3800:

     3801:

     3802: def form_blocks(arrays, names, axes):

    /* "pandas/internals.pyx":3802
     *
     *
     * def form_blocks(arrays, names, axes):             # <<<<<<<<<<<<<<
     *
     *     # pre-filter out items if we passed it
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_11form_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_11form_blocks = {__Pyx_NAMESTR("form_blocks"), (PyCFunction)__pyx_pw_6pandas_9internals_11form_blocks, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_11form_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_arrays = 0;
      PyObject *__pyx_v_names = 0;
      PyObject *__pyx_v_axes = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("form_blocks (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_arrays,&__pyx_n_s_names,&__pyx_n_s_axes,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_arrays)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_names)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("form_blocks", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_axes)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("form_blocks", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "form_blocks") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_arrays = values[0];
        __pyx_v_names = values[1];
        __pyx_v_axes = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("form_blocks", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals.form_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_10form_blocks(__pyx_self, __pyx_v_arrays, __pyx_v_names, __pyx_v_axes);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }
    static PyObject *__pyx_gb_6pandas_9internals_11form_blocks_2generator10(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value); /* proto */

    /* "pandas/internals.pyx":3802
     *
     *
     * def form_blocks(arrays, names, axes):             # <<<<<<<<<<<<<<
     *
     *     # pre-filter out items if we passed it
     */

    static PyObject *__pyx_pf_6pandas_9internals_10form_blocks(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_arrays, PyObject *__pyx_v_names, PyObject *__pyx_v_axes) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_28_form_blocks *__pyx_cur_scope;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_nn = NULL;
      PyObject *__pyx_v_extra_items = NULL;
      PyObject *__pyx_v_float_items = NULL;
      PyObject *__pyx_v_complex_items = NULL;
      PyObject *__pyx_v_int_items = NULL;
      PyObject *__pyx_v_bool_items = NULL;
      PyObject *__pyx_v_object_items = NULL;
      PyObject *__pyx_v_sparse_items = NULL;
      PyObject *__pyx_v_datetime_items = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_k = NULL;
      PyObject *__pyx_v_v = NULL;
      PyObject *__pyx_v_is_unique = NULL;
      PyObject *__pyx_v_blocks = NULL;
      PyObject *__pyx_v_float_blocks = NULL;
      PyObject *__pyx_v_complex_blocks = NULL;
      PyObject *__pyx_v_int_blocks = NULL;
      PyObject *__pyx_v_datetime_blocks = NULL;
      PyObject *__pyx_v_bool_blocks = NULL;
      PyObject *__pyx_v_object_blocks = NULL;
      PyObject *__pyx_v_sparse_blocks = NULL;
      PyObject *__pyx_v_shape = NULL;
      PyObject *__pyx_v_block_values = NULL;
      PyObject *__pyx_v_placement = NULL;
      PyObject *__pyx_v_na_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("form_blocks", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_28_form_blocks *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_28_form_blocks(__pyx_ptype_6pandas_9internals___pyx_scope_struct_28_form_blocks, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_v_axes = __pyx_v_axes;
      __Pyx_INCREF(__pyx_cur_scope->__pyx_v_axes);
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_axes);

      /* "pandas/internals.pyx":3802
     *
     *
     * def form_blocks(arrays, names, axes):             # <<<<<<<<<<<<<<
     *
     *     # pre-filter out items if we passed it
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_XDECREF(__pyx_t_11);
      __Pyx_AddTraceback("pandas.internals.form_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_nn);
      __Pyx_XDECREF(__pyx_v_extra_items);
      __Pyx_XDECREF(__pyx_v_float_items);
      __Pyx_XDECREF(__pyx_v_complex_items);
      __Pyx_XDECREF(__pyx_v_int_items);
      __Pyx_XDECREF(__pyx_v_bool_items);
      __Pyx_XDECREF(__pyx_v_object_items);
      __Pyx_XDECREF(__pyx_v_sparse_items);
      __Pyx_XDECREF(__pyx_v_datetime_items);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_k);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XDECREF(__pyx_v_is_unique);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_float_blocks);
      __Pyx_XDECREF(__pyx_v_complex_blocks);
      __Pyx_XDECREF(__pyx_v_int_blocks);
      __Pyx_XDECREF(__pyx_v_datetime_blocks);
      __Pyx_XDECREF(__pyx_v_bool_blocks);
      __Pyx_XDECREF(__pyx_v_object_blocks);
      __Pyx_XDECREF(__pyx_v_sparse_blocks);
      __Pyx_XDECREF(__pyx_v_shape);
      __Pyx_XDECREF(__pyx_v_block_values);
      __Pyx_XDECREF(__pyx_v_placement);
      __Pyx_XDECREF(__pyx_v_na_block);
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3802
     *
     *
     * def form_blocks(arrays, names, axes):             # <<<<<<<<<<<<<<
     *
     *     # pre-filter out items if we passed it
     */
      __pyx_tuple__752 = PyTuple_Pack(31, __pyx_n_s_arrays, __pyx_n_s_names, __pyx_n_s_axes, __pyx_n_s_items, __pyx_n_s_nn, __pyx_n_s_extra_items, __pyx_n_s_float_items, __pyx_n_s_complex_items, __pyx_n_s_int_items, __pyx_n_s_bool_items, __pyx_n_s_object_items, __pyx_n_s_sparse_items, __pyx_n_s_datetime_items, __pyx_n_s_i, __pyx_n_s_k, __pyx_n_s_v, __pyx_n_s_is_unique, __pyx_n_s_blocks, __pyx_n_s_float_blocks, __pyx_n_s_complex_blocks, __pyx_n_s_int_blocks, __pyx_n_s_datetime_blocks, __pyx_n_s_bool_blocks, __pyx_n_s_object_blocks, __pyx_n_s_sparse_blocks, __pyx_n_s_shape, __pyx_n_s_block_values, __pyx_n_s_placement, __pyx_n_s_na_block, __pyx_n_s_genexpr, __pyx_n_s_genexpr); if (unlikely(!__pyx_tuple__752)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__752);
      __Pyx_GIVEREF(__pyx_tuple__752);

      /* "pandas/internals.pyx":3802
     *
     *
     * def form_blocks(arrays, names, axes):             # <<<<<<<<<<<<<<
     *
     *     # pre-filter out items if we passed it
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_11form_blocks, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_form_blocks, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__753 = (PyObject*)__Pyx_PyCode_New(3, 0, 31, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__752, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_form_blocks, 3802, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__753)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3802; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

    /* "pandas/internals.pyx":3802
     *
     *
     * def form_blocks(arrays, names, axes):             # <<<<<<<<<<<<<<
     *
     *     # pre-filter out items if we passed it
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_28_form_blocks {
      PyObject_HEAD
      PyObject *__pyx_v_axes;
    };

     3803:

     3804:     # pre-filter out items if we passed it

     3805:     items = axes[0]

      /* "pandas/internals.pyx":3805
     *
     *     # pre-filter out items if we passed it
     *     items = axes[0]             # <<<<<<<<<<<<<<
     *
     *     if len(arrays) < len(items):
     */
      __pyx_t_1 = __Pyx_GetItemInt(__pyx_cur_scope->__pyx_v_axes, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3805; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_items = __pyx_t_1;
      __pyx_t_1 = 0;

     3806:

     3807:     if len(arrays) < len(items):

      /* "pandas/internals.pyx":3807
     *     items = axes[0]
     *
     *     if len(arrays) < len(items):             # <<<<<<<<<<<<<<
     *         nn = set(names)
     *         extra_items = Index([i for i in items if i not in nn])
     */
      __pyx_t_2 = PyObject_Length(__pyx_v_arrays); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_3 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3807; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = ((__pyx_t_2 < __pyx_t_3) != 0);
      if (__pyx_t_4) {

     3808:         nn = set(names)

        /* "pandas/internals.pyx":3808
     *
     *     if len(arrays) < len(items):
     *         nn = set(names)             # <<<<<<<<<<<<<<
     *         extra_items = Index([i for i in items if i not in nn])
     *     else:
     */
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_names);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_names);
        __Pyx_GIVEREF(__pyx_v_names);
        __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3808; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_nn = ((PyObject*)__pyx_t_5);
        __pyx_t_5 = 0;

     3809:         extra_items = Index([i for i in items if i not in nn])

        /* "pandas/internals.pyx":3809
     *     if len(arrays) < len(items):
     *         nn = set(names)
     *         extra_items = Index([i for i in items if i not in nn])             # <<<<<<<<<<<<<<
     *     else:
     *         extra_items = []
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_Index); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_v_items) || PyTuple_CheckExact(__pyx_v_items)) {
          __pyx_t_6 = __pyx_v_items; __Pyx_INCREF(__pyx_t_6); __pyx_t_3 = 0;
          __pyx_t_7 = NULL;
        } else {
          __pyx_t_3 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_items); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_7 = Py_TYPE(__pyx_t_6)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_6)) {
            if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_6)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_3); __Pyx_INCREF(__pyx_t_8); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_6, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_6)) {
            if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_6)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_3); __Pyx_INCREF(__pyx_t_8); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_6, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_8 = __pyx_t_7(__pyx_t_6);
            if (unlikely(!__pyx_t_8)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_8);
          }
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_8);
          __pyx_t_8 = 0;
          __pyx_t_4 = (__Pyx_PySequence_Contains(__pyx_v_i, __pyx_v_nn, Py_NE)); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = (__pyx_t_4 != 0);
          if (__pyx_t_9) {
            if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_v_i))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            goto __pyx_L6;
          }
          __pyx_L6:;
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_5, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3809; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_v_extra_items = __pyx_t_1;
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      /*else*/ {

     3810:     else:

     3811:         extra_items = []

        /* "pandas/internals.pyx":3811
     *         extra_items = Index([i for i in items if i not in nn])
     *     else:
     *         extra_items = []             # <<<<<<<<<<<<<<
     *
     *     # put "leftover" items in float bucket, where else?
     */
        __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3811; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_v_extra_items = __pyx_t_1;
        __pyx_t_1 = 0;
      }
      __pyx_L3:;

     3812:

     3813:     # put "leftover" items in float bucket, where else?

     3814:     # generalize?

     3815:     float_items = []

      /* "pandas/internals.pyx":3815
     *     # put "leftover" items in float bucket, where else?
     *     # generalize?
     *     float_items = []             # <<<<<<<<<<<<<<
     *     complex_items = []
     *     int_items = []
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3815; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_float_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3816:     complex_items = []

      /* "pandas/internals.pyx":3816
     *     # generalize?
     *     float_items = []
     *     complex_items = []             # <<<<<<<<<<<<<<
     *     int_items = []
     *     bool_items = []
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3816; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_complex_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3817:     int_items = []

      /* "pandas/internals.pyx":3817
     *     float_items = []
     *     complex_items = []
     *     int_items = []             # <<<<<<<<<<<<<<
     *     bool_items = []
     *     object_items = []
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3817; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_int_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3818:     bool_items = []

      /* "pandas/internals.pyx":3818
     *     complex_items = []
     *     int_items = []
     *     bool_items = []             # <<<<<<<<<<<<<<
     *     object_items = []
     *     sparse_items = []
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3818; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_bool_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3819:     object_items = []

      /* "pandas/internals.pyx":3819
     *     int_items = []
     *     bool_items = []
     *     object_items = []             # <<<<<<<<<<<<<<
     *     sparse_items = []
     *     datetime_items = []
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3819; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_object_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3820:     sparse_items = []

      /* "pandas/internals.pyx":3820
     *     bool_items = []
     *     object_items = []
     *     sparse_items = []             # <<<<<<<<<<<<<<
     *     datetime_items = []
     *
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3820; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_sparse_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3821:     datetime_items = []

      /* "pandas/internals.pyx":3821
     *     object_items = []
     *     sparse_items = []
     *     datetime_items = []             # <<<<<<<<<<<<<<
     *
     *     for i, (k, v) in enumerate(zip(names, arrays)):
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3821; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_datetime_items = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3822:

     3823:     for i, (k, v) in enumerate(zip(names, arrays)):

      /* "pandas/internals.pyx":3823
     *     datetime_items = []
     *
     *     for i, (k, v) in enumerate(zip(names, arrays)):             # <<<<<<<<<<<<<<
     *         if isinstance(v, (SparseArray, ABCSparseSeries)):
     *             sparse_items.append((i, k, v))
     */
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_1 = __pyx_int_0;
      __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_6);
      __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_INCREF(__pyx_v_names);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_names);
      __Pyx_GIVEREF(__pyx_v_names);
      __Pyx_INCREF(__pyx_v_arrays);
      PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_arrays);
      __Pyx_GIVEREF(__pyx_v_arrays);
      __pyx_t_8 = PyObject_Call(__pyx_t_6, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_8);
      __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      if (PyList_CheckExact(__pyx_t_8) || PyTuple_CheckExact(__pyx_t_8)) {
        __pyx_t_5 = __pyx_t_8; __Pyx_INCREF(__pyx_t_5); __pyx_t_3 = 0;
        __pyx_t_7 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = Py_TYPE(__pyx_t_5)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
      for (;;) {
        if (!__pyx_t_7 && PyList_CheckExact(__pyx_t_5)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_8 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_3); __Pyx_INCREF(__pyx_t_8); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_7 && PyTuple_CheckExact(__pyx_t_5)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_3); __Pyx_INCREF(__pyx_t_8); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_8 = __pyx_t_7(__pyx_t_5);
          if (unlikely(!__pyx_t_8)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_8);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_8))) || (PyList_CheckExact(__pyx_t_8))) {
          PyObject* sequence = __pyx_t_8;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_10 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_6 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_10 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_10);
          #else
          __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_10 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          #endif
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_11 = PyObject_GetIter(__pyx_t_8); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_11);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_12 = Py_TYPE(__pyx_t_11)->tp_iternext;
          index = 0; __pyx_t_6 = __pyx_t_12(__pyx_t_11); if (unlikely(!__pyx_t_6)) goto __pyx_L9_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_6);
          index = 1; __pyx_t_10 = __pyx_t_12(__pyx_t_11); if (unlikely(!__pyx_t_10)) goto __pyx_L9_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_10);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_12(__pyx_t_11), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_12 = NULL;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          goto __pyx_L10_unpacking_done;
          __pyx_L9_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
          __pyx_t_12 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L10_unpacking_done:;
        }
        __Pyx_XDECREF_SET(__pyx_v_k, __pyx_t_6);
        __pyx_t_6 = 0;
        __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_10);
        __pyx_t_10 = 0;
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
        __pyx_t_8 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3823; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_1);
        __pyx_t_1 = __pyx_t_8;
        __pyx_t_8 = 0;

     3824:         if isinstance(v, (SparseArray, ABCSparseSeries)):

        /* "pandas/internals.pyx":3824
     *
     *     for i, (k, v) in enumerate(zip(names, arrays)):
     *         if isinstance(v, (SparseArray, ABCSparseSeries)):             # <<<<<<<<<<<<<<
     *             sparse_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.floating):
     */
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseArray); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3824; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_ABCSparseSeries); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3824; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3824; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_8);
        __Pyx_GIVEREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_t_10);
        __Pyx_GIVEREF(__pyx_t_10);
        __pyx_t_8 = 0;
        __pyx_t_10 = 0;
        __pyx_t_9 = PyObject_IsInstance(__pyx_v_v, __pyx_t_6); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3824; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_4 = (__pyx_t_9 != 0);
        if (__pyx_t_4) {

     3825:             sparse_items.append((i, k, v))

          /* "pandas/internals.pyx":3825
     *     for i, (k, v) in enumerate(zip(names, arrays)):
     *         if isinstance(v, (SparseArray, ABCSparseSeries)):
     *             sparse_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *         elif issubclass(v.dtype.type, np.floating):
     *             float_items.append((i, k, v))
     */
          __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3825; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_k);
          PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_k);
          __Pyx_GIVEREF(__pyx_v_k);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_sparse_items, __pyx_t_6); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3825; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L11;
        }

     3826:         elif issubclass(v.dtype.type, np.floating):

        /* "pandas/internals.pyx":3826
     *         if isinstance(v, (SparseArray, ABCSparseSeries)):
     *             sparse_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.floating):             # <<<<<<<<<<<<<<
     *             float_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.complexfloating):
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_type); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_floating); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_4 = PyObject_IsSubclass(__pyx_t_10, __pyx_t_8); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3826; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_9 = (__pyx_t_4 != 0);
        if (__pyx_t_9) {

     3827:             float_items.append((i, k, v))

          /* "pandas/internals.pyx":3827
     *             sparse_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.floating):
     *             float_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *         elif issubclass(v.dtype.type, np.complexfloating):
     *             complex_items.append((i, k, v))
     */
          __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3827; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_k);
          PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_k);
          __Pyx_GIVEREF(__pyx_v_k);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_float_items, __pyx_t_8); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3827; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L11;
        }

     3828:         elif issubclass(v.dtype.type, np.complexfloating):

        /* "pandas/internals.pyx":3828
     *         elif issubclass(v.dtype.type, np.floating):
     *             float_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.complexfloating):             # <<<<<<<<<<<<<<
     *             complex_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.datetime64):
     */
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3828; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_type); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3828; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3828; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_complexfloating); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3828; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_9 = PyObject_IsSubclass(__pyx_t_10, __pyx_t_6); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3828; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_4 = (__pyx_t_9 != 0);
        if (__pyx_t_4) {

     3829:             complex_items.append((i, k, v))

          /* "pandas/internals.pyx":3829
     *             float_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.complexfloating):
     *             complex_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *         elif issubclass(v.dtype.type, np.datetime64):
     *             if v.dtype != _NS_DTYPE:
     */
          __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3829; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_k);
          PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_k);
          __Pyx_GIVEREF(__pyx_v_k);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_complex_items, __pyx_t_6); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3829; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L11;
        }

     3830:         elif issubclass(v.dtype.type, np.datetime64):

        /* "pandas/internals.pyx":3830
     *         elif issubclass(v.dtype.type, np.complexfloating):
     *             complex_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.datetime64):             # <<<<<<<<<<<<<<
     *             if v.dtype != _NS_DTYPE:
     *                 v = tslib.cast_to_nanoseconds(v)
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_type); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_datetime64); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_4 = PyObject_IsSubclass(__pyx_t_10, __pyx_t_8); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3830; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_9 = (__pyx_t_4 != 0);
        if (__pyx_t_9) {

     3831:             if v.dtype != _NS_DTYPE:

          /* "pandas/internals.pyx":3831
     *             complex_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.datetime64):
     *             if v.dtype != _NS_DTYPE:             # <<<<<<<<<<<<<<
     *                 v = tslib.cast_to_nanoseconds(v)
     *
     */
          __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_NS_DTYPE); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_6 = PyObject_RichCompare(__pyx_t_8, __pyx_t_10, Py_NE); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3831; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (__pyx_t_9) {

     3832:                 v = tslib.cast_to_nanoseconds(v)

            /* "pandas/internals.pyx":3832
     *         elif issubclass(v.dtype.type, np.datetime64):
     *             if v.dtype != _NS_DTYPE:
     *                 v = tslib.cast_to_nanoseconds(v)             # <<<<<<<<<<<<<<
     *
     *             if hasattr(v, 'tz') and v.tz is not None:
     */
            __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_tslib); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3832; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_cast_to_nanoseconds); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3832; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3832; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_INCREF(__pyx_v_v);
            PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_v);
            __Pyx_GIVEREF(__pyx_v_v);
            __pyx_t_8 = PyObject_Call(__pyx_t_10, __pyx_t_6, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3832; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __Pyx_DECREF_SET(__pyx_v_v, __pyx_t_8);
            __pyx_t_8 = 0;
            goto __pyx_L12;
          }
          __pyx_L12:;

     3833:

     3834:             if hasattr(v, 'tz') and v.tz is not None:

          /* "pandas/internals.pyx":3834
     *                 v = tslib.cast_to_nanoseconds(v)
     *
     *             if hasattr(v, 'tz') and v.tz is not None:             # <<<<<<<<<<<<<<
     *                 object_items.append((i, k, v))
     *             else:
     */
          __pyx_t_9 = PyObject_HasAttr(__pyx_v_v, __pyx_n_s_tz); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if ((__pyx_t_9 != 0)) {
            __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_tz); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3834; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __pyx_t_4 = (__pyx_t_8 != Py_None);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __pyx_t_14 = (__pyx_t_4 != 0);
          } else {
            __pyx_t_14 = (__pyx_t_9 != 0);
          }
          if (__pyx_t_14) {

     3835:                 object_items.append((i, k, v))

            /* "pandas/internals.pyx":3835
     *
     *             if hasattr(v, 'tz') and v.tz is not None:
     *                 object_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *             else:
     *                 datetime_items.append((i, k, v))
     */
            __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_INCREF(__pyx_v_i);
            PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            __Pyx_INCREF(__pyx_v_k);
            PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_k);
            __Pyx_GIVEREF(__pyx_v_k);
            __Pyx_INCREF(__pyx_v_v);
            PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_v);
            __Pyx_GIVEREF(__pyx_v_v);
            __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_object_items, __pyx_t_8); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3835; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            goto __pyx_L13;
          }
          /*else*/ {

     3836:             else:

     3837:                 datetime_items.append((i, k, v))

            /* "pandas/internals.pyx":3837
     *                 object_items.append((i, k, v))
     *             else:
     *                 datetime_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *         elif issubclass(v.dtype.type, np.integer):
     *             if v.dtype == np.uint64:
     */
            __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_INCREF(__pyx_v_i);
            PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_i);
            __Pyx_GIVEREF(__pyx_v_i);
            __Pyx_INCREF(__pyx_v_k);
            PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_k);
            __Pyx_GIVEREF(__pyx_v_k);
            __Pyx_INCREF(__pyx_v_v);
            PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_v);
            __Pyx_GIVEREF(__pyx_v_v);
            __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_datetime_items, __pyx_t_8); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3837; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          }
          __pyx_L13:;
          goto __pyx_L11;
        }

     3838:         elif issubclass(v.dtype.type, np.integer):

        /* "pandas/internals.pyx":3838
     *             else:
     *                 datetime_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.integer):             # <<<<<<<<<<<<<<
     *             if v.dtype == np.uint64:
     *                 # HACK #2355 definite overflow
     */
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3838; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_type); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3838; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3838; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_integer); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3838; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_14 = PyObject_IsSubclass(__pyx_t_6, __pyx_t_10); if (unlikely(__pyx_t_14 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3838; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_9 = (__pyx_t_14 != 0);
        if (__pyx_t_9) {

     3839:             if v.dtype == np.uint64:

          /* "pandas/internals.pyx":3839
     *                 datetime_items.append((i, k, v))
     *         elif issubclass(v.dtype.type, np.integer):
     *             if v.dtype == np.uint64:             # <<<<<<<<<<<<<<
     *                 # HACK #2355 definite overflow
     *                 if (v > 2 ** 63 - 1).any():
     */
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3839; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __pyx_t_6 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3839; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_uint64); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3839; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __pyx_t_6 = PyObject_RichCompare(__pyx_t_10, __pyx_t_8, Py_EQ); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3839; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3839; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          if (__pyx_t_9) {

     3840:                 # HACK #2355 definite overflow

     3841:                 if (v > 2 ** 63 - 1).any():

            /* "pandas/internals.pyx":3841
     *             if v.dtype == np.uint64:
     *                 # HACK #2355 definite overflow
     *                 if (v > 2 ** 63 - 1).any():             # <<<<<<<<<<<<<<
     *                     object_items.append((i, k, v))
     *                     continue
     */
            __pyx_t_6 = PyObject_RichCompare(__pyx_v_v, __pyx_int_9223372036854775807, Py_GT); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3841; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_6, __pyx_n_s_any); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3841; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_8);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_6 = PyObject_Call(__pyx_t_8, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3841; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_6);
            __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
            __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3841; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            if (__pyx_t_9) {

     3842:                     object_items.append((i, k, v))

              /* "pandas/internals.pyx":3842
     *                 # HACK #2355 definite overflow
     *                 if (v > 2 ** 63 - 1).any():
     *                     object_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *                     continue
     *             int_items.append((i, k, v))
     */
              __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3842; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_GOTREF(__pyx_t_6);
              __Pyx_INCREF(__pyx_v_i);
              PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i);
              __Pyx_GIVEREF(__pyx_v_i);
              __Pyx_INCREF(__pyx_v_k);
              PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_k);
              __Pyx_GIVEREF(__pyx_v_k);
              __Pyx_INCREF(__pyx_v_v);
              PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_v);
              __Pyx_GIVEREF(__pyx_v_v);
              __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_object_items, __pyx_t_6); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3842; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3843:                     continue

              /* "pandas/internals.pyx":3843
     *                 if (v > 2 ** 63 - 1).any():
     *                     object_items.append((i, k, v))
     *                     continue             # <<<<<<<<<<<<<<
     *             int_items.append((i, k, v))
     *         elif v.dtype == np.bool_:
     */
              goto __pyx_L7_continue;
            }
            goto __pyx_L14;
          }
          __pyx_L14:;

     3844:             int_items.append((i, k, v))

          /* "pandas/internals.pyx":3844
     *                     object_items.append((i, k, v))
     *                     continue
     *             int_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *         elif v.dtype == np.bool_:
     *             bool_items.append((i, k, v))
     */
          __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3844; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_k);
          PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_k);
          __Pyx_GIVEREF(__pyx_v_k);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_int_items, __pyx_t_6); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3844; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          goto __pyx_L11;
        }

     3845:         elif v.dtype == np.bool_:

        /* "pandas/internals.pyx":3845
     *                     continue
     *             int_items.append((i, k, v))
     *         elif v.dtype == np.bool_:             # <<<<<<<<<<<<<<
     *             bool_items.append((i, k, v))
     *         else:
     */
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_v, __pyx_n_s_dtype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_bool); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = PyObject_RichCompare(__pyx_t_6, __pyx_t_10, Py_EQ); __Pyx_XGOTREF(__pyx_t_8); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_8); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3845; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        if (__pyx_t_9) {

     3846:             bool_items.append((i, k, v))

          /* "pandas/internals.pyx":3846
     *             int_items.append((i, k, v))
     *         elif v.dtype == np.bool_:
     *             bool_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *         else:
     *             object_items.append((i, k, v))
     */
          __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3846; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_k);
          PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_k);
          __Pyx_GIVEREF(__pyx_v_k);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_bool_items, __pyx_t_8); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3846; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L11;
        }
        /*else*/ {

     3847:         else:

     3848:             object_items.append((i, k, v))

          /* "pandas/internals.pyx":3848
     *             bool_items.append((i, k, v))
     *         else:
     *             object_items.append((i, k, v))             # <<<<<<<<<<<<<<
     *
     *     is_unique = items.is_unique
     */
          __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_INCREF(__pyx_v_i);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_i);
          __Pyx_GIVEREF(__pyx_v_i);
          __Pyx_INCREF(__pyx_v_k);
          PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_k);
          __Pyx_GIVEREF(__pyx_v_k);
          __Pyx_INCREF(__pyx_v_v);
          PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_v);
          __Pyx_GIVEREF(__pyx_v_v);
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_object_items, __pyx_t_8); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3848; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
        __pyx_L11:;
        __pyx_L7_continue:;
      }
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3849:

     3850:     is_unique = items.is_unique

      /* "pandas/internals.pyx":3850
     *             object_items.append((i, k, v))
     *
     *     is_unique = items.is_unique             # <<<<<<<<<<<<<<
     *     blocks = []
     *     if len(float_items):
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3850; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_is_unique = __pyx_t_1;
      __pyx_t_1 = 0;

     3851:     blocks = []

      /* "pandas/internals.pyx":3851
     *
     *     is_unique = items.is_unique
     *     blocks = []             # <<<<<<<<<<<<<<
     *     if len(float_items):
     *         float_blocks = _multi_blockify(float_items, items, is_unique=is_unique)
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3851; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_blocks = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3852:     if len(float_items):

      /* "pandas/internals.pyx":3852
     *     is_unique = items.is_unique
     *     blocks = []
     *     if len(float_items):             # <<<<<<<<<<<<<<
     *         float_blocks = _multi_blockify(float_items, items, is_unique=is_unique)
     *         blocks.extend(float_blocks)
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_float_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3852; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = (__pyx_t_3 != 0);
      if (__pyx_t_9) {

     3853:         float_blocks = _multi_blockify(float_items, items, is_unique=is_unique)

        /* "pandas/internals.pyx":3853
     *     blocks = []
     *     if len(float_items):
     *         float_blocks = _multi_blockify(float_items, items, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(float_blocks)
     *
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_multi_blockify); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3853; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3853; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_float_items);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_float_items);
        __Pyx_GIVEREF(__pyx_v_float_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3853; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_is_unique, __pyx_v_is_unique) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3853; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_10 = PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3853; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_float_blocks = __pyx_t_10;
        __pyx_t_10 = 0;

     3854:         blocks.extend(float_blocks)

        /* "pandas/internals.pyx":3854
     *     if len(float_items):
     *         float_blocks = _multi_blockify(float_items, items, is_unique=is_unique)
     *         blocks.extend(float_blocks)             # <<<<<<<<<<<<<<
     *
     *     if len(complex_items):
     */
        __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_blocks, __pyx_v_float_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3854; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L16;
      }
      __pyx_L16:;

     3855:

     3856:     if len(complex_items):

      /* "pandas/internals.pyx":3856
     *         blocks.extend(float_blocks)
     *
     *     if len(complex_items):             # <<<<<<<<<<<<<<
     *         complex_blocks = _simple_blockify(
     *             complex_items, items, np.complex128, is_unique=is_unique)
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_complex_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3856; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = (__pyx_t_3 != 0);
      if (__pyx_t_9) {

     3857:         complex_blocks = _simple_blockify(

        /* "pandas/internals.pyx":3857
     *
     *     if len(complex_items):
     *         complex_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             complex_items, items, np.complex128, is_unique=is_unique)
     *         blocks.extend(complex_blocks)
     */
        __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_simple_blockify); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3857; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);

        /* "pandas/internals.pyx":3857
     *
     *     if len(complex_items):
     *         complex_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             complex_items, items, np.complex128, is_unique=is_unique)
     *         blocks.extend(complex_blocks)
     */
        __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3857; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_INCREF(__pyx_v_complex_items);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_complex_items);
        __Pyx_GIVEREF(__pyx_v_complex_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3857; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

        /* "pandas/internals.pyx":3857
     *
     *     if len(complex_items):
     *         complex_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             complex_items, items, np.complex128, is_unique=is_unique)
     *         blocks.extend(complex_blocks)
     */
        __pyx_t_1 = PyObject_Call(__pyx_t_10, __pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3857; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_complex_blocks = __pyx_t_1;
        __pyx_t_1 = 0;

     3858:             complex_items, items, np.complex128, is_unique=is_unique)

        /* "pandas/internals.pyx":3858
     *     if len(complex_items):
     *         complex_blocks = _simple_blockify(
     *             complex_items, items, np.complex128, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(complex_blocks)
     *
     */
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3858; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_complex128); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3858; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

        /* "pandas/internals.pyx":3858
     *     if len(complex_items):
     *         complex_blocks = _simple_blockify(
     *             complex_items, items, np.complex128, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(complex_blocks)
     *
     */
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_is_unique, __pyx_v_is_unique) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3857; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3859:         blocks.extend(complex_blocks)

        /* "pandas/internals.pyx":3859
     *         complex_blocks = _simple_blockify(
     *             complex_items, items, np.complex128, is_unique=is_unique)
     *         blocks.extend(complex_blocks)             # <<<<<<<<<<<<<<
     *
     *     if len(int_items):
     */
        __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_blocks, __pyx_v_complex_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3859; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L17;
      }
      __pyx_L17:;

     3860:

     3861:     if len(int_items):

      /* "pandas/internals.pyx":3861
     *         blocks.extend(complex_blocks)
     *
     *     if len(int_items):             # <<<<<<<<<<<<<<
     *         int_blocks = _multi_blockify(int_items, items, is_unique=is_unique)
     *         blocks.extend(int_blocks)
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_int_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3861; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = (__pyx_t_3 != 0);
      if (__pyx_t_9) {

     3862:         int_blocks = _multi_blockify(int_items, items, is_unique=is_unique)

        /* "pandas/internals.pyx":3862
     *
     *     if len(int_items):
     *         int_blocks = _multi_blockify(int_items, items, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(int_blocks)
     *
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_multi_blockify); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_int_items);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_int_items);
        __Pyx_GIVEREF(__pyx_v_int_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_is_unique, __pyx_v_is_unique) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_10 = PyObject_Call(__pyx_t_1, __pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3862; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_int_blocks = __pyx_t_10;
        __pyx_t_10 = 0;

     3863:         blocks.extend(int_blocks)

        /* "pandas/internals.pyx":3863
     *     if len(int_items):
     *         int_blocks = _multi_blockify(int_items, items, is_unique=is_unique)
     *         blocks.extend(int_blocks)             # <<<<<<<<<<<<<<
     *
     *     if len(datetime_items):
     */
        __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_blocks, __pyx_v_int_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3863; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L18;
      }
      __pyx_L18:;

     3864:

     3865:     if len(datetime_items):

      /* "pandas/internals.pyx":3865
     *         blocks.extend(int_blocks)
     *
     *     if len(datetime_items):             # <<<<<<<<<<<<<<
     *         datetime_blocks = _simple_blockify(
     *             datetime_items, items, _NS_DTYPE, is_unique=is_unique)
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_datetime_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3865; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = (__pyx_t_3 != 0);
      if (__pyx_t_9) {

     3866:         datetime_blocks = _simple_blockify(

        /* "pandas/internals.pyx":3866
     *
     *     if len(datetime_items):
     *         datetime_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             datetime_items, items, _NS_DTYPE, is_unique=is_unique)
     *         blocks.extend(datetime_blocks)
     */
        __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_simple_blockify); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);

        /* "pandas/internals.pyx":3866
     *
     *     if len(datetime_items):
     *         datetime_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             datetime_items, items, _NS_DTYPE, is_unique=is_unique)
     *         blocks.extend(datetime_blocks)
     */
        __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_datetime_items);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_datetime_items);
        __Pyx_GIVEREF(__pyx_v_datetime_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_8);
        __Pyx_GIVEREF(__pyx_t_8);
        __pyx_t_8 = 0;
        __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);

        /* "pandas/internals.pyx":3866
     *
     *     if len(datetime_items):
     *         datetime_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             datetime_items, items, _NS_DTYPE, is_unique=is_unique)
     *         blocks.extend(datetime_blocks)
     */
        __pyx_t_1 = PyObject_Call(__pyx_t_10, __pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_datetime_blocks = __pyx_t_1;
        __pyx_t_1 = 0;

     3867:             datetime_items, items, _NS_DTYPE, is_unique=is_unique)

        /* "pandas/internals.pyx":3867
     *     if len(datetime_items):
     *         datetime_blocks = _simple_blockify(
     *             datetime_items, items, _NS_DTYPE, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(datetime_blocks)
     *
     */
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_NS_DTYPE); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3867; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);

        /* "pandas/internals.pyx":3867
     *     if len(datetime_items):
     *         datetime_blocks = _simple_blockify(
     *             datetime_items, items, _NS_DTYPE, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(datetime_blocks)
     *
     */
        if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_is_unique, __pyx_v_is_unique) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3866; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3868:         blocks.extend(datetime_blocks)

        /* "pandas/internals.pyx":3868
     *         datetime_blocks = _simple_blockify(
     *             datetime_items, items, _NS_DTYPE, is_unique=is_unique)
     *         blocks.extend(datetime_blocks)             # <<<<<<<<<<<<<<
     *
     *     if len(bool_items):
     */
        __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_blocks, __pyx_v_datetime_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3868; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L19;
      }
      __pyx_L19:;

     3869:

     3870:     if len(bool_items):

      /* "pandas/internals.pyx":3870
     *         blocks.extend(datetime_blocks)
     *
     *     if len(bool_items):             # <<<<<<<<<<<<<<
     *         bool_blocks = _simple_blockify(
     *             bool_items, items, np.bool_, is_unique=is_unique)
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_bool_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3870; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = (__pyx_t_3 != 0);
      if (__pyx_t_9) {

     3871:         bool_blocks = _simple_blockify(

        /* "pandas/internals.pyx":3871
     *
     *     if len(bool_items):
     *         bool_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             bool_items, items, np.bool_, is_unique=is_unique)
     *         blocks.extend(bool_blocks)
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_simple_blockify); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":3871
     *
     *     if len(bool_items):
     *         bool_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             bool_items, items, np.bool_, is_unique=is_unique)
     *         blocks.extend(bool_blocks)
     */
        __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_INCREF(__pyx_v_bool_items);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_bool_items);
        __Pyx_GIVEREF(__pyx_v_bool_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

        /* "pandas/internals.pyx":3871
     *
     *     if len(bool_items):
     *         bool_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             bool_items, items, np.bool_, is_unique=is_unique)
     *         blocks.extend(bool_blocks)
     */
        __pyx_t_10 = PyObject_Call(__pyx_t_1, __pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_bool_blocks = __pyx_t_10;
        __pyx_t_10 = 0;

     3872:             bool_items, items, np.bool_, is_unique=is_unique)

        /* "pandas/internals.pyx":3872
     *     if len(bool_items):
     *         bool_blocks = _simple_blockify(
     *             bool_items, items, np.bool_, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(bool_blocks)
     *
     */
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_bool); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3872; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;

        /* "pandas/internals.pyx":3872
     *     if len(bool_items):
     *         bool_blocks = _simple_blockify(
     *             bool_items, items, np.bool_, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(bool_blocks)
     *
     */
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_is_unique, __pyx_v_is_unique) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3871; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3873:         blocks.extend(bool_blocks)

        /* "pandas/internals.pyx":3873
     *         bool_blocks = _simple_blockify(
     *             bool_items, items, np.bool_, is_unique=is_unique)
     *         blocks.extend(bool_blocks)             # <<<<<<<<<<<<<<
     *
     *     if len(object_items) > 0:
     */
        __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_blocks, __pyx_v_bool_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3873; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L20;
      }
      __pyx_L20:;

     3874:

     3875:     if len(object_items) > 0:

      /* "pandas/internals.pyx":3875
     *         blocks.extend(bool_blocks)
     *
     *     if len(object_items) > 0:             # <<<<<<<<<<<<<<
     *         object_blocks = _simple_blockify(
     *             object_items, items, np.object_, is_unique=is_unique)
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_object_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3875; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = ((__pyx_t_3 > 0) != 0);
      if (__pyx_t_9) {

     3876:         object_blocks = _simple_blockify(

        /* "pandas/internals.pyx":3876
     *
     *     if len(object_items) > 0:
     *         object_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             object_items, items, np.object_, is_unique=is_unique)
     *         blocks.extend(object_blocks)
     */
        __pyx_t_10 = __Pyx_GetModuleGlobalName(__pyx_n_s_simple_blockify); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);

        /* "pandas/internals.pyx":3876
     *
     *     if len(object_items) > 0:
     *         object_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             object_items, items, np.object_, is_unique=is_unique)
     *         blocks.extend(object_blocks)
     */
        __pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_v_object_items);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_object_items);
        __Pyx_GIVEREF(__pyx_v_object_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_8);
        __Pyx_GIVEREF(__pyx_t_8);
        __pyx_t_8 = 0;
        __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);

        /* "pandas/internals.pyx":3876
     *
     *     if len(object_items) > 0:
     *         object_blocks = _simple_blockify(             # <<<<<<<<<<<<<<
     *             object_items, items, np.object_, is_unique=is_unique)
     *         blocks.extend(object_blocks)
     */
        __pyx_t_1 = PyObject_Call(__pyx_t_10, __pyx_t_5, __pyx_t_8); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_object_blocks = __pyx_t_1;
        __pyx_t_1 = 0;

     3877:             object_items, items, np.object_, is_unique=is_unique)

        /* "pandas/internals.pyx":3877
     *     if len(object_items) > 0:
     *         object_blocks = _simple_blockify(
     *             object_items, items, np.object_, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(object_blocks)
     *
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_object_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3877; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;

        /* "pandas/internals.pyx":3877
     *     if len(object_items) > 0:
     *         object_blocks = _simple_blockify(
     *             object_items, items, np.object_, is_unique=is_unique)             # <<<<<<<<<<<<<<
     *         blocks.extend(object_blocks)
     *
     */
        if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_is_unique, __pyx_v_is_unique) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3876; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3878:         blocks.extend(object_blocks)

        /* "pandas/internals.pyx":3878
     *         object_blocks = _simple_blockify(
     *             object_items, items, np.object_, is_unique=is_unique)
     *         blocks.extend(object_blocks)             # <<<<<<<<<<<<<<
     *
     *     if len(sparse_items) > 0:
     */
        __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_blocks, __pyx_v_object_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3878; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L21;
      }
      __pyx_L21:;

     3879:

     3880:     if len(sparse_items) > 0:

      /* "pandas/internals.pyx":3880
     *         blocks.extend(object_blocks)
     *
     *     if len(sparse_items) > 0:             # <<<<<<<<<<<<<<
     *         sparse_blocks = _sparse_blockify(sparse_items, items)
     *         blocks.extend(sparse_blocks)
     */
      __pyx_t_3 = PyList_GET_SIZE(__pyx_v_sparse_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3880; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = ((__pyx_t_3 > 0) != 0);
      if (__pyx_t_9) {

     3881:         sparse_blocks = _sparse_blockify(sparse_items, items)

        /* "pandas/internals.pyx":3881
     *
     *     if len(sparse_items) > 0:
     *         sparse_blocks = _sparse_blockify(sparse_items, items)             # <<<<<<<<<<<<<<
     *         blocks.extend(sparse_blocks)
     *
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_sparse_blockify); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3881; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_8 = PyTuple_New(2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3881; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_INCREF(__pyx_v_sparse_items);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_sparse_items);
        __Pyx_GIVEREF(__pyx_v_sparse_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_5 = PyObject_Call(__pyx_t_1, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3881; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_sparse_blocks = __pyx_t_5;
        __pyx_t_5 = 0;

     3882:         blocks.extend(sparse_blocks)

        /* "pandas/internals.pyx":3882
     *     if len(sparse_items) > 0:
     *         sparse_blocks = _sparse_blockify(sparse_items, items)
     *         blocks.extend(sparse_blocks)             # <<<<<<<<<<<<<<
     *
     *     if len(extra_items):
     */
        __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_blocks, __pyx_v_sparse_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3882; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L22;
      }
      __pyx_L22:;

     3883:

     3884:     if len(extra_items):

      /* "pandas/internals.pyx":3884
     *         blocks.extend(sparse_blocks)
     *
     *     if len(extra_items):             # <<<<<<<<<<<<<<
     *         shape = (len(extra_items),) + tuple(len(x) for x in axes[1:])
     *
     */
      __pyx_t_3 = PyObject_Length(__pyx_v_extra_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3884; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_9 = (__pyx_t_3 != 0);
      if (__pyx_t_9) {

     3885:         shape = (len(extra_items),) + tuple(len(x) for x in axes[1:])

    /* "pandas/internals.pyx":3885
     *
     *     if len(extra_items):
     *         shape = (len(extra_items),) + tuple(len(x) for x in axes[1:])             # <<<<<<<<<<<<<<
     *
     *         # empty items -> dtype object
     */

    static PyObject *__pyx_pf_6pandas_9internals_11form_blocks_genexpr(PyObject *__pyx_self) {
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_29_genexpr *__pyx_cur_scope;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("genexpr", 0);
      __pyx_cur_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_29_genexpr *)__pyx_tp_new_6pandas_9internals___pyx_scope_struct_29_genexpr(__pyx_ptype_6pandas_9internals___pyx_scope_struct_29_genexpr, __pyx_empty_tuple, NULL);
      if (unlikely(!__pyx_cur_scope)) {
        __Pyx_RefNannyFinishContext();
        return NULL;
      }
      __Pyx_GOTREF(__pyx_cur_scope);
      __pyx_cur_scope->__pyx_outer_scope = (struct __pyx_obj_6pandas_9internals___pyx_scope_struct_28_form_blocks *) __pyx_self;
      __Pyx_INCREF(((PyObject *)__pyx_cur_scope->__pyx_outer_scope));
      __Pyx_GIVEREF(__pyx_cur_scope->__pyx_outer_scope);
      {
        __pyx_GeneratorObject *gen = __Pyx_Generator_New((__pyx_generator_body_t) __pyx_gb_6pandas_9internals_11form_blocks_2generator10, (PyObject *) __pyx_cur_scope); if (unlikely(!gen)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_cur_scope);
        __Pyx_RefNannyFinishContext();
        return (PyObject *) gen;
      }

      /* function exit code */
      __pyx_r = Py_None; __Pyx_INCREF(Py_None);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_AddTraceback("pandas.internals.form_blocks.genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_DECREF(((PyObject *)__pyx_cur_scope));
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_gb_6pandas_9internals_11form_blocks_2generator10(__pyx_GeneratorObject *__pyx_generator, PyObject *__pyx_sent_value) /* generator body */
    {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("None", 0);
      __pyx_L3_first_run:;
      if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (unlikely(!__pyx_cur_scope->__pyx_outer_scope->__pyx_v_axes)) { __Pyx_RaiseClosureNameError("axes"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }
      __pyx_t_1 = __Pyx_PyObject_GetSlice(__pyx_cur_scope->__pyx_outer_scope->__pyx_v_axes, 1, 0, NULL, NULL, &__pyx_slice__127, 1, 0, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) {
        __pyx_t_2 = __pyx_t_1; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_x);
        __Pyx_XDECREF_SET(__pyx_cur_scope->__pyx_v_x, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_5 = PyObject_Length(__pyx_cur_scope->__pyx_v_x); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        __Pyx_XGIVEREF(__pyx_t_2);
        __pyx_cur_scope->__pyx_t_0 = __pyx_t_2;
        __pyx_cur_scope->__pyx_t_1 = __pyx_t_3;
        __pyx_cur_scope->__pyx_t_2 = __pyx_t_4;
        __Pyx_XGIVEREF(__pyx_r);
        __Pyx_RefNannyFinishContext();
        /* return from generator, yielding value */
        __pyx_generator->resume_label = 1;
        return __pyx_r;
        __pyx_L6_resume_from_yield:;
        __pyx_t_2 = __pyx_cur_scope->__pyx_t_0;
        __pyx_cur_scope->__pyx_t_0 = 0;
        __Pyx_XGOTREF(__pyx_t_2);
        __pyx_t_3 = __pyx_cur_scope->__pyx_t_1;
        __pyx_t_4 = __pyx_cur_scope->__pyx_t_2;
        if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

      /* function exit code */
      PyErr_SetNone(PyExc_StopIteration);
      goto __pyx_L0;
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_r);
      __pyx_generator->resume_label = -1;
      __Pyx_Generator_clear((PyObject*)__pyx_generator);
      __Pyx_RefNannyFinishContext();
      return NULL;
    }

        /* "pandas/internals.pyx":3885
     *
     *     if len(extra_items):
     *         shape = (len(extra_items),) + tuple(len(x) for x in axes[1:])             # <<<<<<<<<<<<<<
     *
     *         # empty items -> dtype object
     */
        __pyx_t_3 = PyObject_Length(__pyx_v_extra_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_5 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = __pyx_pf_6pandas_9internals_11form_blocks_genexpr(((PyObject*)__pyx_cur_scope)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyNumber_Add(__pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_shape = ((PyObject*)__pyx_t_1);
        __pyx_t_1 = 0;

      /* "pandas/internals.pyx":3885
     *
     *     if len(extra_items):
     *         shape = (len(extra_items),) + tuple(len(x) for x in axes[1:])             # <<<<<<<<<<<<<<
     *
     *         # empty items -> dtype object
     */
      __pyx_slice__127 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__127)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3885; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__127);
      __Pyx_GIVEREF(__pyx_slice__127);

    /* "pandas/internals.pyx":3885
     *
     *     if len(extra_items):
     *         shape = (len(extra_items),) + tuple(len(x) for x in axes[1:])             # <<<<<<<<<<<<<<
     *
     *         # empty items -> dtype object
     */
    struct __pyx_obj_6pandas_9internals___pyx_scope_struct_29_genexpr {
      PyObject_HEAD
      struct __pyx_obj_6pandas_9internals___pyx_scope_struct_28_form_blocks *__pyx_outer_scope;
      PyObject *__pyx_v_x;
      PyObject *__pyx_t_0;
      Py_ssize_t __pyx_t_1;
      PyObject *(*__pyx_t_2)(PyObject *);
    };

     3886:

     3887:         # empty items -> dtype object

     3888:         block_values = np.empty(shape, dtype=object)

        /* "pandas/internals.pyx":3888
     *
     *         # empty items -> dtype object
     *         block_values = np.empty(shape, dtype=object)             # <<<<<<<<<<<<<<
     *         block_values.fill(np.nan)
     *
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_shape);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_shape);
        __Pyx_GIVEREF(__pyx_v_shape);
        __pyx_t_8 = PyDict_New(); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        if (PyDict_SetItem(__pyx_t_8, __pyx_n_s_dtype, __pyx_builtin_object) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_10 = PyObject_Call(__pyx_t_5, __pyx_t_1, __pyx_t_8); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3888; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_block_values = __pyx_t_10;
        __pyx_t_10 = 0;

     3889:         block_values.fill(np.nan)

        /* "pandas/internals.pyx":3889
     *         # empty items -> dtype object
     *         block_values = np.empty(shape, dtype=object)
     *         block_values.fill(np.nan)             # <<<<<<<<<<<<<<
     *
     *         placement = None if is_unique else np.arange(len(extra_items))
     */
        __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_v_block_values, __pyx_n_s_fill); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_nan); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_10, __pyx_t_8, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3889; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3890:

     3891:         placement = None if is_unique else np.arange(len(extra_items))

        /* "pandas/internals.pyx":3891
     *         block_values.fill(np.nan)
     *
     *         placement = None if is_unique else np.arange(len(extra_items))             # <<<<<<<<<<<<<<
     *         na_block = make_block(
     *             block_values, extra_items, items, placement=placement)
     */
        __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_9) {
          __Pyx_INCREF(Py_None);
          __pyx_t_1 = Py_None;
        } else {
          __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_10 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_arange); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_3 = PyObject_Length(__pyx_v_extra_items); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = PyInt_FromSsize_t(__pyx_t_3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_8);
          __Pyx_GIVEREF(__pyx_t_8);
          __pyx_t_8 = 0;
          __pyx_t_8 = PyObject_Call(__pyx_t_10, __pyx_t_5, NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3891; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_1 = __pyx_t_8;
          __pyx_t_8 = 0;
        }
        __pyx_v_placement = __pyx_t_1;
        __pyx_t_1 = 0;

     3892:         na_block = make_block(

        /* "pandas/internals.pyx":3892
     *
     *         placement = None if is_unique else np.arange(len(extra_items))
     *         na_block = make_block(             # <<<<<<<<<<<<<<
     *             block_values, extra_items, items, placement=placement)
     *         blocks.append(na_block)
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);

        /* "pandas/internals.pyx":3893
     *         placement = None if is_unique else np.arange(len(extra_items))
     *         na_block = make_block(
     *             block_values, extra_items, items, placement=placement)             # <<<<<<<<<<<<<<
     *         blocks.append(na_block)
     *
     */
        __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_INCREF(__pyx_v_block_values);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_block_values);
        __Pyx_GIVEREF(__pyx_v_block_values);
        __Pyx_INCREF(__pyx_v_extra_items);
        PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_extra_items);
        __Pyx_GIVEREF(__pyx_v_extra_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);

        /* "pandas/internals.pyx":3892
     *
     *         placement = None if is_unique else np.arange(len(extra_items))
     *         na_block = make_block(             # <<<<<<<<<<<<<<
     *             block_values, extra_items, items, placement=placement)
     *         blocks.append(na_block)
     */
        __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);

        /* "pandas/internals.pyx":3892
     *
     *         placement = None if is_unique else np.arange(len(extra_items))
     *         na_block = make_block(             # <<<<<<<<<<<<<<
     *             block_values, extra_items, items, placement=placement)
     *         blocks.append(na_block)
     */
        __pyx_t_10 = PyObject_Call(__pyx_t_1, __pyx_t_8, __pyx_t_5); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_10);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_na_block = __pyx_t_10;
        __pyx_t_10 = 0;

     3893:             block_values, extra_items, items, placement=placement)

        /* "pandas/internals.pyx":3893
     *         placement = None if is_unique else np.arange(len(extra_items))
     *         na_block = make_block(
     *             block_values, extra_items, items, placement=placement)             # <<<<<<<<<<<<<<
     *         blocks.append(na_block)
     *
     */
        if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3892; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3894:         blocks.append(na_block)

        /* "pandas/internals.pyx":3894
     *         na_block = make_block(
     *             block_values, extra_items, items, placement=placement)
     *         blocks.append(na_block)             # <<<<<<<<<<<<<<
     *
     *     return blocks
     */
        __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_blocks, __pyx_v_na_block); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3894; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        goto __pyx_L23;
      }
      __pyx_L23:;

     3895:

     3896:     return blocks

      /* "pandas/internals.pyx":3896
     *         blocks.append(na_block)
     *
     *     return blocks             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_blocks);
      __pyx_r = __pyx_v_blocks;
      goto __pyx_L0;

     3897:

     3898:

     3899: def _simple_blockify(tuples, ref_items, dtype, is_unique=True):

    /* "pandas/internals.pyx":3899
     *
     *
     * def _simple_blockify(tuples, ref_items, dtype, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return a single array of a block that has a single dtype; if dtype is
     *     not None, coerce to this dtype
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13_simple_blockify(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_12_simple_blockify[] = " return a single array of a block that has a single dtype; if dtype is\n    not None, coerce to this dtype\n    ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_13_simple_blockify = {__Pyx_NAMESTR("_simple_blockify"), (PyCFunction)__pyx_pw_6pandas_9internals_13_simple_blockify, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_12_simple_blockify)};
    static PyObject *__pyx_pw_6pandas_9internals_13_simple_blockify(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_tuples = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v_is_unique = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_simple_blockify (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tuples,&__pyx_n_s_ref_items,&__pyx_n_s_dtype,&__pyx_n_s_is_unique,0};
        PyObject* values[4] = {0,0,0,0};
        values[3] = ((PyObject *)Py_True);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tuples)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_simple_blockify", 0, 3, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_simple_blockify", 0, 3, 4, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_is_unique);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_simple_blockify") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_tuples = values[0];
        __pyx_v_ref_items = values[1];
        __pyx_v_dtype = values[2];
        __pyx_v_is_unique = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_simple_blockify", 0, 3, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._simple_blockify", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_12_simple_blockify(__pyx_self, __pyx_v_tuples, __pyx_v_ref_items, __pyx_v_dtype, __pyx_v_is_unique);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_12_simple_blockify(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tuples, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_dtype, PyObject *__pyx_v_is_unique) {
      PyObject *__pyx_v_block_items = NULL;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_placement = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_simple_blockify", 0);

      /* "pandas/internals.pyx":3899
     *
     *
     * def _simple_blockify(tuples, ref_items, dtype, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return a single array of a block that has a single dtype; if dtype is
     *     not None, coerce to this dtype
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals._simple_blockify", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_block_items);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_placement);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3899
     *
     *
     * def _simple_blockify(tuples, ref_items, dtype, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return a single array of a block that has a single dtype; if dtype is
     *     not None, coerce to this dtype
     */
      __pyx_tuple__754 = PyTuple_Pack(8, __pyx_n_s_tuples, __pyx_n_s_ref_items, __pyx_n_s_dtype, __pyx_n_s_is_unique, __pyx_n_s_block_items, __pyx_n_s_values, __pyx_n_s_placement, __pyx_n_s_block); if (unlikely(!__pyx_tuple__754)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__754);
      __Pyx_GIVEREF(__pyx_tuple__754);

      /* "pandas/internals.pyx":3899
     *
     *
     * def _simple_blockify(tuples, ref_items, dtype, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return a single array of a block that has a single dtype; if dtype is
     *     not None, coerce to this dtype
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_13_simple_blockify, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_simple_blockify, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__755 = (PyObject*)__Pyx_PyCode_New(4, 0, 8, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__754, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_simple_blockify, 3899, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__755)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3899; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3900:     """ return a single array of a block that has a single dtype; if dtype is

     3901:     not None, coerce to this dtype

     3902:     """

     3903:     block_items, values, placement = _stack_arrays(tuples, ref_items, dtype)

      /* "pandas/internals.pyx":3903
     *     not None, coerce to this dtype
     *     """
     *     block_items, values, placement = _stack_arrays(tuples, ref_items, dtype)             # <<<<<<<<<<<<<<
     *
     *     # CHECK DTYPE?
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_stack_arrays); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_tuples);
      PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_tuples);
      __Pyx_GIVEREF(__pyx_v_tuples);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __Pyx_INCREF(__pyx_v_dtype);
      PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_v_dtype);
      __Pyx_GIVEREF(__pyx_v_dtype);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
        PyObject* sequence = __pyx_t_3;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 3)) {
          if (size > 3) __Pyx_RaiseTooManyValuesError(3);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
          __pyx_t_4 = PyTuple_GET_ITEM(sequence, 2);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
          __pyx_t_4 = PyList_GET_ITEM(sequence, 2);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        #endif
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_5 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_1 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_4);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = NULL;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3903; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_block_items = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_v_values = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_v_placement = __pyx_t_4;
      __pyx_t_4 = 0;

     3904:

     3905:     # CHECK DTYPE?

     3906:     if dtype is not None and values.dtype != dtype:  # pragma: no cover

      /* "pandas/internals.pyx":3906
     *
     *     # CHECK DTYPE?
     *     if dtype is not None and values.dtype != dtype:  # pragma: no cover             # <<<<<<<<<<<<<<
     *         values = values.astype(dtype)
     *
     */
      __pyx_t_7 = (__pyx_v_dtype != Py_None);
      if (__pyx_t_7) {
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_4 = PyObject_RichCompare(__pyx_t_3, __pyx_v_dtype, Py_NE); __Pyx_XGOTREF(__pyx_t_4); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3906; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_9 = __pyx_t_8;
      } else {
        __pyx_t_9 = __pyx_t_7;
      }
      if (__pyx_t_9) {

     3907:         values = values.astype(dtype)

        /* "pandas/internals.pyx":3907
     *     # CHECK DTYPE?
     *     if dtype is not None and values.dtype != dtype:  # pragma: no cover
     *         values = values.astype(dtype)             # <<<<<<<<<<<<<<
     *
     *     if is_unique:
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_astype); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_dtype);
        PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_dtype);
        __Pyx_GIVEREF(__pyx_v_dtype);
        __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3907; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L5;
      }
      __pyx_L5:;

     3908:

     3909:     if is_unique:

      /* "pandas/internals.pyx":3909
     *         values = values.astype(dtype)
     *
     *     if is_unique:             # <<<<<<<<<<<<<<
     *         placement = None
     *     block = make_block(values, block_items, ref_items, placement=placement)
     */
      __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3909; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_9) {

     3910:         placement = None

        /* "pandas/internals.pyx":3910
     *
     *     if is_unique:
     *         placement = None             # <<<<<<<<<<<<<<
     *     block = make_block(values, block_items, ref_items, placement=placement)
     *     return [block]
     */
        __Pyx_INCREF(Py_None);
        __Pyx_DECREF_SET(__pyx_v_placement, Py_None);
        goto __pyx_L6;
      }
      __pyx_L6:;

     3911:     block = make_block(values, block_items, ref_items, placement=placement)

      /* "pandas/internals.pyx":3911
     *     if is_unique:
     *         placement = None
     *     block = make_block(values, block_items, ref_items, placement=placement)             # <<<<<<<<<<<<<<
     *     return [block]
     *
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3911; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(3); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3911; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_values);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_values);
      __Pyx_GIVEREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_block_items);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_block_items);
      __Pyx_GIVEREF(__pyx_v_block_items);
      __Pyx_INCREF(__pyx_v_ref_items);
      PyTuple_SET_ITEM(__pyx_t_3, 2, __pyx_v_ref_items);
      __Pyx_GIVEREF(__pyx_v_ref_items);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3911; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3911; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_3, __pyx_t_4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3911; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_block = __pyx_t_2;
      __pyx_t_2 = 0;

     3912:     return [block]

      /* "pandas/internals.pyx":3912
     *         placement = None
     *     block = make_block(values, block_items, ref_items, placement=placement)
     *     return [block]             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3912; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_INCREF(__pyx_v_block);
      PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_block);
      __Pyx_GIVEREF(__pyx_v_block);
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

     3913:

     3914:

     3915: def _multi_blockify(tuples, ref_items, dtype=None, is_unique=True):

    /* "pandas/internals.pyx":3915
     *
     *
     * def _multi_blockify(tuples, ref_items, dtype=None, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes """
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_15_multi_blockify(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_14_multi_blockify[] = " return an array of blocks that potentially have different dtypes ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_15_multi_blockify = {__Pyx_NAMESTR("_multi_blockify"), (PyCFunction)__pyx_pw_6pandas_9internals_15_multi_blockify, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_14_multi_blockify)};
    static PyObject *__pyx_pw_6pandas_9internals_15_multi_blockify(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_tuples = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v_is_unique = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_multi_blockify (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tuples,&__pyx_n_s_ref_items,&__pyx_n_s_dtype,&__pyx_n_s_is_unique,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)Py_None);
        values[3] = ((PyObject *)Py_True);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tuples)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_multi_blockify", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3915; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_is_unique);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_multi_blockify") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3915; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_tuples = values[0];
        __pyx_v_ref_items = values[1];
        __pyx_v_dtype = values[2];
        __pyx_v_is_unique = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_multi_blockify", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3915; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._multi_blockify", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_14_multi_blockify(__pyx_self, __pyx_v_tuples, __pyx_v_ref_items, __pyx_v_dtype, __pyx_v_is_unique);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":3915
     *
     *
     * def _multi_blockify(tuples, ref_items, dtype=None, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes """
     *
     */

    static PyObject *__pyx_pf_6pandas_9internals_14_multi_blockify(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tuples, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_dtype, PyObject *__pyx_v_is_unique) {
      PyObject *__pyx_v_grouper = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v_tup_block = NULL;
      PyObject *__pyx_v_block_items = NULL;
      PyObject *__pyx_v_values = NULL;
      PyObject *__pyx_v_placement = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_multi_blockify", 0);
      __Pyx_INCREF(__pyx_v_dtype);

      /* "pandas/internals.pyx":3915
     *
     *
     * def _multi_blockify(tuples, ref_items, dtype=None, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes """
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_AddTraceback("pandas.internals._multi_blockify", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_grouper);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_tup_block);
      __Pyx_XDECREF(__pyx_v_block_items);
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_placement);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3915
     *
     *
     * def _multi_blockify(tuples, ref_items, dtype=None, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes """
     *
     */
      __pyx_tuple__756 = PyTuple_Pack(11, __pyx_n_s_tuples, __pyx_n_s_ref_items, __pyx_n_s_dtype, __pyx_n_s_is_unique, __pyx_n_s_grouper, __pyx_n_s_new_blocks, __pyx_n_s_tup_block, __pyx_n_s_block_items, __pyx_n_s_values, __pyx_n_s_placement, __pyx_n_s_block); if (unlikely(!__pyx_tuple__756)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3915; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__756);
      __Pyx_GIVEREF(__pyx_tuple__756);

      /* "pandas/internals.pyx":3915
     *
     *
     * def _multi_blockify(tuples, ref_items, dtype=None, is_unique=True):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes """
     *
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_15_multi_blockify, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3915; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_multi_blockify, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3915; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__757 = (PyObject*)__Pyx_PyCode_New(4, 0, 11, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__756, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_multi_blockify, 3915, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__757)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3915; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3916:     """ return an array of blocks that potentially have different dtypes """

     3917:

     3918:     # group by dtype

     3919:     grouper = itertools.groupby(tuples, lambda x: x[2].dtype)

    /* "pandas/internals.pyx":3919
     *
     *     # group by dtype
     *     grouper = itertools.groupby(tuples, lambda x: x[2].dtype)             # <<<<<<<<<<<<<<
     *
     *     new_blocks = []
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_15_multi_blockify_lambda17(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_15_multi_blockify_lambda17 = {__Pyx_NAMESTR("lambda17"), (PyCFunction)__pyx_pw_6pandas_9internals_15_multi_blockify_lambda17, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_15_multi_blockify_lambda17(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda17 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda17(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda17(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda17", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_x, 2, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3919; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_r = __pyx_t_2;
      __pyx_t_2 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals._multi_blockify.lambda17", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3919
     *
     *     # group by dtype
     *     grouper = itertools.groupby(tuples, lambda x: x[2].dtype)             # <<<<<<<<<<<<<<
     *
     *     new_blocks = []
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_itertools); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_groupby); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_15_multi_blockify_lambda17, 0, __pyx_n_s_multi_blockify_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_INCREF(__pyx_v_tuples);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_v_tuples);
      __Pyx_GIVEREF(__pyx_v_tuples);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_t_1);
      __Pyx_GIVEREF(__pyx_t_1);
      __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3919; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_grouper = __pyx_t_1;
      __pyx_t_1 = 0;

     3920:

     3921:     new_blocks = []

      /* "pandas/internals.pyx":3921
     *     grouper = itertools.groupby(tuples, lambda x: x[2].dtype)
     *
     *     new_blocks = []             # <<<<<<<<<<<<<<
     *     for dtype, tup_block in grouper:
     *
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3921; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3922:     for dtype, tup_block in grouper:

      /* "pandas/internals.pyx":3922
     *
     *     new_blocks = []
     *     for dtype, tup_block in grouper:             # <<<<<<<<<<<<<<
     *
     *         block_items, values, placement = _stack_arrays(
     */
      if (PyList_CheckExact(__pyx_v_grouper) || PyTuple_CheckExact(__pyx_v_grouper)) {
        __pyx_t_1 = __pyx_v_grouper; __Pyx_INCREF(__pyx_t_1); __pyx_t_4 = 0;
        __pyx_t_5 = NULL;
      } else {
        __pyx_t_4 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_grouper); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_5 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_5 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_4); __Pyx_INCREF(__pyx_t_3); __pyx_t_4++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_1, __pyx_t_4); __pyx_t_4++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_5(__pyx_t_1);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
          PyObject* sequence = __pyx_t_3;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_6);
          #else
          __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          #endif
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_7 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
          index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          index = 1; __pyx_t_6 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_6);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L6_unpacking_done;
          __pyx_L5_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3922; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L6_unpacking_done:;
        }
        __Pyx_DECREF_SET(__pyx_v_dtype, __pyx_t_2);
        __pyx_t_2 = 0;
        __Pyx_XDECREF_SET(__pyx_v_tup_block, __pyx_t_6);
        __pyx_t_6 = 0;

     3923:

     3924:         block_items, values, placement = _stack_arrays(

        /* "pandas/internals.pyx":3924
     *     for dtype, tup_block in grouper:
     *
     *         block_items, values, placement = _stack_arrays(             # <<<<<<<<<<<<<<
     *             list(tup_block), ref_items, dtype)
     *         if is_unique:
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_stack_arrays); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);

        /* "pandas/internals.pyx":3924
     *     for dtype, tup_block in grouper:
     *
     *         block_items, values, placement = _stack_arrays(             # <<<<<<<<<<<<<<
     *             list(tup_block), ref_items, dtype)
     *         if is_unique:
     */
        __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_ref_items);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_ref_items);
        __Pyx_GIVEREF(__pyx_v_ref_items);
        __Pyx_INCREF(__pyx_v_dtype);
        PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_dtype);
        __Pyx_GIVEREF(__pyx_v_dtype);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
          PyObject* sequence = __pyx_t_2;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 3)) {
            if (size > 3) __Pyx_RaiseTooManyValuesError(3);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyTuple_GET_ITEM(sequence, 1);
            __pyx_t_7 = PyTuple_GET_ITEM(sequence, 2);
          } else {
            __pyx_t_6 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_3 = PyList_GET_ITEM(sequence, 1);
            __pyx_t_7 = PyList_GET_ITEM(sequence, 2);
          }
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_3);
          __Pyx_INCREF(__pyx_t_7);
          #else
          __pyx_t_6 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_3 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_7 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          #endif
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_9 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_9)->tp_iternext;
          index = 0; __pyx_t_6 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_6)) goto __pyx_L7_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_6);
          index = 1; __pyx_t_3 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_3)) goto __pyx_L7_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_3);
          index = 2; __pyx_t_7 = __pyx_t_8(__pyx_t_9); if (unlikely(!__pyx_t_7)) goto __pyx_L7_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_7);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_9), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          goto __pyx_L8_unpacking_done;
          __pyx_L7_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3924; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L8_unpacking_done:;
        }
        __Pyx_XDECREF_SET(__pyx_v_block_items, __pyx_t_6);
        __pyx_t_6 = 0;
        __Pyx_XDECREF_SET(__pyx_v_values, __pyx_t_3);
        __pyx_t_3 = 0;
        __Pyx_XDECREF_SET(__pyx_v_placement, __pyx_t_7);
        __pyx_t_7 = 0;

     3925:             list(tup_block), ref_items, dtype)

        /* "pandas/internals.pyx":3925
     *
     *         block_items, values, placement = _stack_arrays(
     *             list(tup_block), ref_items, dtype)             # <<<<<<<<<<<<<<
     *         if is_unique:
     *             placement = None
     */
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_tup_block);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_tup_block);
        __Pyx_GIVEREF(__pyx_v_tup_block);
        __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3925; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;

     3926:         if is_unique:

        /* "pandas/internals.pyx":3926
     *         block_items, values, placement = _stack_arrays(
     *             list(tup_block), ref_items, dtype)
     *         if is_unique:             # <<<<<<<<<<<<<<
     *             placement = None
     *         block = make_block(values, block_items, ref_items, placement=placement)
     */
        __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_is_unique); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3926; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_10) {

     3927:             placement = None

          /* "pandas/internals.pyx":3927
     *             list(tup_block), ref_items, dtype)
     *         if is_unique:
     *             placement = None             # <<<<<<<<<<<<<<
     *         block = make_block(values, block_items, ref_items, placement=placement)
     *         new_blocks.append(block)
     */
          __Pyx_INCREF(Py_None);
          __Pyx_DECREF_SET(__pyx_v_placement, Py_None);
          goto __pyx_L9;
        }
        __pyx_L9:;

     3928:         block = make_block(values, block_items, ref_items, placement=placement)

        /* "pandas/internals.pyx":3928
     *         if is_unique:
     *             placement = None
     *         block = make_block(values, block_items, ref_items, placement=placement)             # <<<<<<<<<<<<<<
     *         new_blocks.append(block)
     *
     */
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_7 = PyTuple_New(3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_values);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_values);
        __Pyx_GIVEREF(__pyx_v_values);
        __Pyx_INCREF(__pyx_v_block_items);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_v_block_items);
        __Pyx_GIVEREF(__pyx_v_block_items);
        __Pyx_INCREF(__pyx_v_ref_items);
        PyTuple_SET_ITEM(__pyx_t_7, 2, __pyx_v_ref_items);
        __Pyx_GIVEREF(__pyx_v_ref_items);
        __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_placement, __pyx_v_placement) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = PyObject_Call(__pyx_t_2, __pyx_t_7, __pyx_t_3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3928; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_6);
        __pyx_t_6 = 0;

     3929:         new_blocks.append(block)

        /* "pandas/internals.pyx":3929
     *             placement = None
     *         block = make_block(values, block_items, ref_items, placement=placement)
     *         new_blocks.append(block)             # <<<<<<<<<<<<<<
     *
     *     return new_blocks
     */
        __pyx_t_11 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_block); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3929; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3930:

     3931:     return new_blocks

      /* "pandas/internals.pyx":3931
     *         new_blocks.append(block)
     *
     *     return new_blocks             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_new_blocks);
      __pyx_r = __pyx_v_new_blocks;
      goto __pyx_L0;

     3932:

     3933:

     3934: def _sparse_blockify(tuples, ref_items, dtype=None):

    /* "pandas/internals.pyx":3934
     *
     *
     * def _sparse_blockify(tuples, ref_items, dtype=None):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes (and
     *     are sparse)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_17_sparse_blockify(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_16_sparse_blockify[] = " return an array of blocks that potentially have different dtypes (and\n    are sparse)\n    ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_17_sparse_blockify = {__Pyx_NAMESTR("_sparse_blockify"), (PyCFunction)__pyx_pw_6pandas_9internals_17_sparse_blockify, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_16_sparse_blockify)};
    static PyObject *__pyx_pw_6pandas_9internals_17_sparse_blockify(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_tuples = 0;
      PyObject *__pyx_v_ref_items = 0;
      CYTHON_UNUSED PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_sparse_blockify (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tuples,&__pyx_n_s_ref_items,&__pyx_n_s_dtype,0};
        PyObject* values[3] = {0,0,0};
        values[2] = ((PyObject *)Py_None);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tuples)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_sparse_blockify", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3934; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_sparse_blockify") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3934; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_tuples = values[0];
        __pyx_v_ref_items = values[1];
        __pyx_v_dtype = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_sparse_blockify", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3934; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._sparse_blockify", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_16_sparse_blockify(__pyx_self, __pyx_v_tuples, __pyx_v_ref_items, __pyx_v_dtype);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_16_sparse_blockify(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tuples, PyObject *__pyx_v_ref_items, CYTHON_UNUSED PyObject *__pyx_v_dtype) {
      PyObject *__pyx_v_new_blocks = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_names = NULL;
      PyObject *__pyx_v_array = NULL;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_sparse_blockify", 0);

      /* "pandas/internals.pyx":3934
     *
     *
     * def _sparse_blockify(tuples, ref_items, dtype=None):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes (and
     *     are sparse)
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals._sparse_blockify", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_names);
      __Pyx_XDECREF(__pyx_v_array);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3934
     *
     *
     * def _sparse_blockify(tuples, ref_items, dtype=None):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes (and
     *     are sparse)
     */
      __pyx_tuple__758 = PyTuple_Pack(9, __pyx_n_s_tuples, __pyx_n_s_ref_items, __pyx_n_s_dtype, __pyx_n_s_new_blocks, __pyx_n_s_i, __pyx_n_s_names, __pyx_n_s_array, __pyx_n_s_items, __pyx_n_s_block); if (unlikely(!__pyx_tuple__758)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__758);
      __Pyx_GIVEREF(__pyx_tuple__758);

      /* "pandas/internals.pyx":3934
     *
     *
     * def _sparse_blockify(tuples, ref_items, dtype=None):             # <<<<<<<<<<<<<<
     *     """ return an array of blocks that potentially have different dtypes (and
     *     are sparse)
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_17_sparse_blockify, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_sparse_blockify, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__759 = (PyObject*)__Pyx_PyCode_New(3, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__758, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_sparse_blockify, 3934, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__759)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3934; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3935:     """ return an array of blocks that potentially have different dtypes (and

     3936:     are sparse)

     3937:     """

     3938:

     3939:     new_blocks = []

      /* "pandas/internals.pyx":3939
     *     """
     *
     *     new_blocks = []             # <<<<<<<<<<<<<<
     *     for i, names, array in tuples:
     *
     */
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3939; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_1);
      __pyx_t_1 = 0;

     3940:     for i, names, array in tuples:

      /* "pandas/internals.pyx":3940
     *
     *     new_blocks = []
     *     for i, names, array in tuples:             # <<<<<<<<<<<<<<
     *
     *         if not isinstance(names, (list, tuple)):
     */
      if (PyList_CheckExact(__pyx_v_tuples) || PyTuple_CheckExact(__pyx_v_tuples)) {
        __pyx_t_1 = __pyx_v_tuples; __Pyx_INCREF(__pyx_t_1); __pyx_t_2 = 0;
        __pyx_t_3 = NULL;
      } else {
        __pyx_t_2 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_v_tuples); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_3 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_3 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_3 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_4 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_4); __pyx_t_2++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_4 = PySequence_ITEM(__pyx_t_1, __pyx_t_2); __pyx_t_2++; if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_4 = __pyx_t_3(__pyx_t_1);
          if (unlikely(!__pyx_t_4)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_4);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_4))) || (PyList_CheckExact(__pyx_t_4))) {
          PyObject* sequence = __pyx_t_4;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 3)) {
            if (size > 3) __Pyx_RaiseTooManyValuesError(3);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_5 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1);
            __pyx_t_7 = PyTuple_GET_ITEM(sequence, 2);
          } else {
            __pyx_t_5 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_6 = PyList_GET_ITEM(sequence, 1);
            __pyx_t_7 = PyList_GET_ITEM(sequence, 2);
          }
          __Pyx_INCREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_t_7);
          #else
          __pyx_t_5 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_7 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          #endif
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_8 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext;
          index = 0; __pyx_t_5 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_5)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_5);
          index = 1; __pyx_t_6 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_6)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_6);
          index = 2; __pyx_t_7 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_7);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = NULL;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          goto __pyx_L6_unpacking_done;
          __pyx_L5_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_9 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3940; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L6_unpacking_done:;
        }
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_5);
        __pyx_t_5 = 0;
        __Pyx_XDECREF_SET(__pyx_v_names, __pyx_t_6);
        __pyx_t_6 = 0;
        __Pyx_XDECREF_SET(__pyx_v_array, __pyx_t_7);
        __pyx_t_7 = 0;

     3941:

     3942:         if not isinstance(names, (list, tuple)):

        /* "pandas/internals.pyx":3942
     *     for i, names, array in tuples:
     *
     *         if not isinstance(names, (list, tuple)):             # <<<<<<<<<<<<<<
     *             names = [names]
     *         items = ref_items[ref_items.isin(names)]
     */
        __Pyx_INCREF(__pyx_v_names);
        __pyx_t_4 = __pyx_v_names;
        __pyx_t_10 = PyList_Check(__pyx_t_4);
        if (!__pyx_t_10) {
          __pyx_t_11 = PyTuple_Check(__pyx_t_4);
          __pyx_t_12 = __pyx_t_11;
        } else {
          __pyx_t_12 = __pyx_t_10;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_10 = ((!(__pyx_t_12 != 0)) != 0);
        if (__pyx_t_10) {

     3943:             names = [names]

          /* "pandas/internals.pyx":3943
     *
     *         if not isinstance(names, (list, tuple)):
     *             names = [names]             # <<<<<<<<<<<<<<
     *         items = ref_items[ref_items.isin(names)]
     *
     */
          __pyx_t_4 = PyList_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3943; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_names);
          PyList_SET_ITEM(__pyx_t_4, 0, __pyx_v_names);
          __Pyx_GIVEREF(__pyx_v_names);
          __Pyx_DECREF_SET(__pyx_v_names, __pyx_t_4);
          __pyx_t_4 = 0;
          goto __pyx_L7;
        }
        __pyx_L7:;

     3944:         items = ref_items[ref_items.isin(names)]

        /* "pandas/internals.pyx":3944
     *         if not isinstance(names, (list, tuple)):
     *             names = [names]
     *         items = ref_items[ref_items.isin(names)]             # <<<<<<<<<<<<<<
     *
     *         array = _maybe_to_sparse(array)
     */
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_v_ref_items, __pyx_n_s_isin); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3944; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_7 = PyTuple_New(1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3944; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_INCREF(__pyx_v_names);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_v_names);
        __Pyx_GIVEREF(__pyx_v_names);
        __pyx_t_6 = PyObject_Call(__pyx_t_4, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3944; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_7 = PyObject_GetItem(__pyx_v_ref_items, __pyx_t_6); if (unlikely(__pyx_t_7 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3944; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_7);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_XDECREF_SET(__pyx_v_items, __pyx_t_7);
        __pyx_t_7 = 0;

     3945:

     3946:         array = _maybe_to_sparse(array)

        /* "pandas/internals.pyx":3946
     *         items = ref_items[ref_items.isin(names)]
     *
     *         array = _maybe_to_sparse(array)             # <<<<<<<<<<<<<<
     *         block = make_block(
     *             array, items, ref_items, klass=SparseBlock, fastpath=True)
     */
        __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_maybe_to_sparse); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_array);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_array);
        __Pyx_GIVEREF(__pyx_v_array);
        __pyx_t_4 = PyObject_Call(__pyx_t_7, __pyx_t_6, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3946; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF_SET(__pyx_v_array, __pyx_t_4);
        __pyx_t_4 = 0;

     3947:         block = make_block(

        /* "pandas/internals.pyx":3947
     *
     *         array = _maybe_to_sparse(array)
     *         block = make_block(             # <<<<<<<<<<<<<<
     *             array, items, ref_items, klass=SparseBlock, fastpath=True)
     *         new_blocks.append(block)
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);

        /* "pandas/internals.pyx":3948
     *         array = _maybe_to_sparse(array)
     *         block = make_block(
     *             array, items, ref_items, klass=SparseBlock, fastpath=True)             # <<<<<<<<<<<<<<
     *         new_blocks.append(block)
     *
     */
        __pyx_t_6 = PyTuple_New(3); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_array);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_array);
        __Pyx_GIVEREF(__pyx_v_array);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __Pyx_INCREF(__pyx_v_ref_items);
        PyTuple_SET_ITEM(__pyx_t_6, 2, __pyx_v_ref_items);
        __Pyx_GIVEREF(__pyx_v_ref_items);

        /* "pandas/internals.pyx":3947
     *
     *         array = _maybe_to_sparse(array)
     *         block = make_block(             # <<<<<<<<<<<<<<
     *             array, items, ref_items, klass=SparseBlock, fastpath=True)
     *         new_blocks.append(block)
     */
        __pyx_t_7 = PyDict_New(); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);

        /* "pandas/internals.pyx":3947
     *
     *         array = _maybe_to_sparse(array)
     *         block = make_block(             # <<<<<<<<<<<<<<
     *             array, items, ref_items, klass=SparseBlock, fastpath=True)
     *         new_blocks.append(block)
     */
        __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_6, __pyx_t_7); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_5);
        __pyx_t_5 = 0;

     3948:             array, items, ref_items, klass=SparseBlock, fastpath=True)

        /* "pandas/internals.pyx":3948
     *         array = _maybe_to_sparse(array)
     *         block = make_block(
     *             array, items, ref_items, klass=SparseBlock, fastpath=True)             # <<<<<<<<<<<<<<
     *         new_blocks.append(block)
     *
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseBlock); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3948; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_klass, __pyx_t_5) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (PyDict_SetItem(__pyx_t_7, __pyx_n_s_fastpath, Py_True) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3947; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3949:         new_blocks.append(block)

        /* "pandas/internals.pyx":3949
     *         block = make_block(
     *             array, items, ref_items, klass=SparseBlock, fastpath=True)
     *         new_blocks.append(block)             # <<<<<<<<<<<<<<
     *
     *     return new_blocks
     */
        __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_block); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3949; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     3950:

     3951:     return new_blocks

      /* "pandas/internals.pyx":3951
     *         new_blocks.append(block)
     *
     *     return new_blocks             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_new_blocks);
      __pyx_r = __pyx_v_new_blocks;
      goto __pyx_L0;

     3952:

     3953:

     3954: def _stack_arrays(tuples, ref_items, dtype):

    /* "pandas/internals.pyx":3954
     *
     *
     * def _stack_arrays(tuples, ref_items, dtype):             # <<<<<<<<<<<<<<
     *
     *     # fml
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_19_stack_arrays(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_19_stack_arrays = {__Pyx_NAMESTR("_stack_arrays"), (PyCFunction)__pyx_pw_6pandas_9internals_19_stack_arrays, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_19_stack_arrays(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_tuples = 0;
      PyObject *__pyx_v_ref_items = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_stack_arrays (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_tuples,&__pyx_n_s_ref_items,&__pyx_n_s_dtype,0};
        PyObject* values[3] = {0,0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_tuples)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ref_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_stack_arrays", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (likely((values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_stack_arrays", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_stack_arrays") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
          values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
        }
        __pyx_v_tuples = values[0];
        __pyx_v_ref_items = values[1];
        __pyx_v_dtype = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_stack_arrays", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._stack_arrays", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_18_stack_arrays(__pyx_self, __pyx_v_tuples, __pyx_v_ref_items, __pyx_v_dtype);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":3954
     *
     *
     * def _stack_arrays(tuples, ref_items, dtype):             # <<<<<<<<<<<<<<
     *
     *     # fml
     */

    static PyObject *__pyx_pf_6pandas_9internals_18_stack_arrays(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_tuples, PyObject *__pyx_v_ref_items, PyObject *__pyx_v_dtype) {
      PyObject *__pyx_v__asarray_compat = 0;
      PyObject *__pyx_v__shape_compat = 0;
      PyObject *__pyx_v_placement = NULL;
      PyObject *__pyx_v_names = NULL;
      PyObject *__pyx_v_arrays = NULL;
      PyObject *__pyx_v_first = NULL;
      PyObject *__pyx_v_shape = NULL;
      PyObject *__pyx_v_stacked = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_arr = NULL;
      PyObject *__pyx_v_items = NULL;
      PyObject *__pyx_v_n = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_stack_arrays", 0);

      /* "pandas/internals.pyx":3954
     *
     *
     * def _stack_arrays(tuples, ref_items, dtype):             # <<<<<<<<<<<<<<
     *
     *     # fml
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals._stack_arrays", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v__asarray_compat);
      __Pyx_XDECREF(__pyx_v__shape_compat);
      __Pyx_XDECREF(__pyx_v_placement);
      __Pyx_XDECREF(__pyx_v_names);
      __Pyx_XDECREF(__pyx_v_arrays);
      __Pyx_XDECREF(__pyx_v_first);
      __Pyx_XDECREF(__pyx_v_shape);
      __Pyx_XDECREF(__pyx_v_stacked);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_arr);
      __Pyx_XDECREF(__pyx_v_items);
      __Pyx_XDECREF(__pyx_v_n);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3954
     *
     *
     * def _stack_arrays(tuples, ref_items, dtype):             # <<<<<<<<<<<<<<
     *
     *     # fml
     */
      __pyx_tuple__760 = PyTuple_Pack(17, __pyx_n_s_tuples, __pyx_n_s_ref_items, __pyx_n_s_dtype, __pyx_n_s_asarray_compat, __pyx_n_s_asarray_compat, __pyx_n_s_shape_compat, __pyx_n_s_shape_compat, __pyx_n_s_placement, __pyx_n_s_names, __pyx_n_s_arrays, __pyx_n_s_first, __pyx_n_s_shape, __pyx_n_s_stacked, __pyx_n_s_i, __pyx_n_s_arr, __pyx_n_s_items, __pyx_n_s_n); if (unlikely(!__pyx_tuple__760)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__760);
      __Pyx_GIVEREF(__pyx_tuple__760);

      /* "pandas/internals.pyx":3954
     *
     *
     * def _stack_arrays(tuples, ref_items, dtype):             # <<<<<<<<<<<<<<
     *
     *     # fml
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_19_stack_arrays, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_stack_arrays, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__761 = (PyObject*)__Pyx_PyCode_New(3, 0, 17, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__760, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_stack_arrays, 3954, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__761)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3954; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3955:

     3956:     # fml

     3957:     def _asarray_compat(x):

    /* "pandas/internals.pyx":3957
     *
     *     # fml
     *     def _asarray_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return x.values
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13_stack_arrays_1_asarray_compat(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13_stack_arrays_1_asarray_compat = {__Pyx_NAMESTR("_asarray_compat"), (PyCFunction)__pyx_pw_6pandas_9internals_13_stack_arrays_1_asarray_compat, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13_stack_arrays_1_asarray_compat(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_asarray_compat (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_13_stack_arrays__asarray_compat(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13_stack_arrays__asarray_compat(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_asarray_compat", 0);

      /* "pandas/internals.pyx":3957
     *
     *     # fml
     *     def _asarray_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return x.values
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals._stack_arrays._asarray_compat", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3957
     *
     *     # fml
     *     def _asarray_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return x.values
     */
      __pyx_tuple__128 = PyTuple_Pack(1, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__128)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__128);
      __Pyx_GIVEREF(__pyx_tuple__128);

      /* "pandas/internals.pyx":3957
     *
     *     # fml
     *     def _asarray_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return x.values
     */
      __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13_stack_arrays_1_asarray_compat, 0, __pyx_n_s_stack_arrays_locals__asarray_co, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__129)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v__asarray_compat = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_codeobj__129 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__128, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_asarray_compat, 3957, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__129)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3957; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3958:         if isinstance(x, ABCSeries):

      /* "pandas/internals.pyx":3958
     *     # fml
     *     def _asarray_compat(x):
     *         if isinstance(x, ABCSeries):             # <<<<<<<<<<<<<<
     *             return x.values
     *         else:
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ABCSeries); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_IsInstance(__pyx_v_x, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3958; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     3959:             return x.values

        /* "pandas/internals.pyx":3959
     *     def _asarray_compat(x):
     *         if isinstance(x, ABCSeries):
     *             return x.values             # <<<<<<<<<<<<<<
     *         else:
     *             return np.asarray(x)
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_values); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3959; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        goto __pyx_L0;
      }
      /*else*/ {

     3960:         else:

     3961:             return np.asarray(x)

        /* "pandas/internals.pyx":3961
     *             return x.values
     *         else:
     *             return np.asarray(x)             # <<<<<<<<<<<<<<
     *
     *     def _shape_compat(x):
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_asarray); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_x);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_x);
        __Pyx_GIVEREF(__pyx_v_x);
        __pyx_t_5 = PyObject_Call(__pyx_t_4, __pyx_t_1, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3961; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L0;
      }

     3962:

     3963:     def _shape_compat(x):

    /* "pandas/internals.pyx":3963
     *             return np.asarray(x)
     *
     *     def _shape_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return len(x),
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13_stack_arrays_3_shape_compat(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13_stack_arrays_3_shape_compat = {__Pyx_NAMESTR("_shape_compat"), (PyCFunction)__pyx_pw_6pandas_9internals_13_stack_arrays_3_shape_compat, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13_stack_arrays_3_shape_compat(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_shape_compat (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_13_stack_arrays_2_shape_compat(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_13_stack_arrays_2_shape_compat(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_shape_compat", 0);

      /* "pandas/internals.pyx":3963
     *             return np.asarray(x)
     *
     *     def _shape_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return len(x),
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals._stack_arrays._shape_compat", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3963
     *             return np.asarray(x)
     *
     *     def _shape_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return len(x),
     */
      __pyx_tuple__130 = PyTuple_Pack(1, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__130)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3963; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__130);
      __Pyx_GIVEREF(__pyx_tuple__130);

      /* "pandas/internals.pyx":3963
     *             return np.asarray(x)
     *
     *     def _shape_compat(x):             # <<<<<<<<<<<<<<
     *         if isinstance(x, ABCSeries):
     *             return len(x),
     */
      __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13_stack_arrays_3_shape_compat, 0, __pyx_n_s_stack_arrays_locals__shape_comp, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__131)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3963; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v__shape_compat = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_codeobj__131 = (PyObject*)__Pyx_PyCode_New(1, 0, 1, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__130, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_shape_compat, 3963, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__131)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3963; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3964:         if isinstance(x, ABCSeries):

      /* "pandas/internals.pyx":3964
     *
     *     def _shape_compat(x):
     *         if isinstance(x, ABCSeries):             # <<<<<<<<<<<<<<
     *             return len(x),
     *         else:
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_ABCSeries); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3964; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_IsInstance(__pyx_v_x, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3964; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = (__pyx_t_2 != 0);
      if (__pyx_t_3) {

     3965:             return len(x),

        /* "pandas/internals.pyx":3965
     *     def _shape_compat(x):
     *         if isinstance(x, ABCSeries):
     *             return len(x),             # <<<<<<<<<<<<<<
     *         else:
     *             return x.shape
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = PyObject_Length(__pyx_v_x); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3965; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_1 = PyInt_FromSsize_t(__pyx_t_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3965; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3965; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L0;
      }
      /*else*/ {

     3966:         else:

     3967:             return x.shape

        /* "pandas/internals.pyx":3967
     *             return len(x),
     *         else:
     *             return x.shape             # <<<<<<<<<<<<<<
     *
     *     placement, names, arrays = zip(*tuples)
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_shape); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3967; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L0;
      }

     3968:

     3969:     placement, names, arrays = zip(*tuples)

      /* "pandas/internals.pyx":3969
     *             return x.shape
     *
     *     placement, names, arrays = zip(*tuples)             # <<<<<<<<<<<<<<
     *
     *     first = arrays[0]
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PySequence_Tuple(__pyx_v_tuples); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_3 = PyObject_Call(__pyx_t_1, __pyx_t_2, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
        PyObject* sequence = __pyx_t_3;
        #if CYTHON_COMPILING_IN_CPYTHON
        Py_ssize_t size = Py_SIZE(sequence);
        #else
        Py_ssize_t size = PySequence_Size(sequence);
        #endif
        if (unlikely(size != 3)) {
          if (size > 3) __Pyx_RaiseTooManyValuesError(3);
          else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        #if CYTHON_COMPILING_IN_CPYTHON
        if (likely(PyTuple_CheckExact(sequence))) {
          __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
          __pyx_t_4 = PyTuple_GET_ITEM(sequence, 2);
        } else {
          __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
          __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
          __pyx_t_4 = PyList_GET_ITEM(sequence, 2);
        }
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_t_4);
        #else
        __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = PySequence_ITEM(sequence, 2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        #endif
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      } else {
        Py_ssize_t index = -1;
        __pyx_t_5 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
        index = 0; __pyx_t_2 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_2)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_2);
        index = 1; __pyx_t_1 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_1)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_1);
        index = 2; __pyx_t_4 = __pyx_t_6(__pyx_t_5); if (unlikely(!__pyx_t_4)) goto __pyx_L3_unpacking_failed;
        __Pyx_GOTREF(__pyx_t_4);
        if (__Pyx_IternextUnpackEndCheck(__pyx_t_6(__pyx_t_5), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_6 = NULL;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        goto __pyx_L4_unpacking_done;
        __pyx_L3_unpacking_failed:;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
        if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
        {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3969; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_L4_unpacking_done:;
      }
      __pyx_v_placement = __pyx_t_2;
      __pyx_t_2 = 0;
      __pyx_v_names = __pyx_t_1;
      __pyx_t_1 = 0;
      __pyx_v_arrays = __pyx_t_4;
      __pyx_t_4 = 0;

     3970:

     3971:     first = arrays[0]

      /* "pandas/internals.pyx":3971
     *     placement, names, arrays = zip(*tuples)
     *
     *     first = arrays[0]             # <<<<<<<<<<<<<<
     *     shape = (len(arrays),) + _shape_compat(first)
     *
     */
      __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_arrays, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3971; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_v_first = __pyx_t_3;
      __pyx_t_3 = 0;

     3972:     shape = (len(arrays),) + _shape_compat(first)

      /* "pandas/internals.pyx":3972
     *
     *     first = arrays[0]
     *     shape = (len(arrays),) + _shape_compat(first)             # <<<<<<<<<<<<<<
     *
     *     stacked = np.empty(shape, dtype=dtype)
     */
      __pyx_t_7 = PyObject_Length(__pyx_v_arrays); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_3 = PyInt_FromSsize_t(__pyx_t_7); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_3);
      __Pyx_GIVEREF(__pyx_t_3);
      __pyx_t_3 = 0;
      __pyx_t_3 = __pyx_pf_6pandas_9internals_13_stack_arrays_2_shape_compat(__pyx_v__shape_compat, __pyx_v_first); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_1 = PyNumber_Add(__pyx_t_4, __pyx_t_3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3972; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_shape = __pyx_t_1;
      __pyx_t_1 = 0;

     3973:

     3974:     stacked = np.empty(shape, dtype=dtype)

      /* "pandas/internals.pyx":3974
     *     shape = (len(arrays),) + _shape_compat(first)
     *
     *     stacked = np.empty(shape, dtype=dtype)             # <<<<<<<<<<<<<<
     *     for i, arr in enumerate(arrays):
     *         stacked[i] = _asarray_compat(arr)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_empty); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_shape);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_shape);
      __Pyx_GIVEREF(__pyx_v_shape);
      __pyx_t_4 = PyDict_New(); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      if (PyDict_SetItem(__pyx_t_4, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_4); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3974; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_v_stacked = __pyx_t_2;
      __pyx_t_2 = 0;

     3975:     for i, arr in enumerate(arrays):

      /* "pandas/internals.pyx":3975
     *
     *     stacked = np.empty(shape, dtype=dtype)
     *     for i, arr in enumerate(arrays):             # <<<<<<<<<<<<<<
     *         stacked[i] = _asarray_compat(arr)
     *
     */
      __Pyx_INCREF(__pyx_int_0);
      __pyx_t_2 = __pyx_int_0;
      if (PyList_CheckExact(__pyx_v_arrays) || PyTuple_CheckExact(__pyx_v_arrays)) {
        __pyx_t_4 = __pyx_v_arrays; __Pyx_INCREF(__pyx_t_4); __pyx_t_7 = 0;
        __pyx_t_8 = NULL;
      } else {
        __pyx_t_7 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_arrays); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_8 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_7); __Pyx_INCREF(__pyx_t_1); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_4, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_7); __Pyx_INCREF(__pyx_t_1); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_4, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_8(__pyx_t_4);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_arr, __pyx_t_1);
        __pyx_t_1 = 0;
        __Pyx_INCREF(__pyx_t_2);
        __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_2);
        __pyx_t_1 = PyNumber_Add(__pyx_t_2, __pyx_int_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3975; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2);
        __pyx_t_2 = __pyx_t_1;
        __pyx_t_1 = 0;

     3976:         stacked[i] = _asarray_compat(arr)

        /* "pandas/internals.pyx":3976
     *     stacked = np.empty(shape, dtype=dtype)
     *     for i, arr in enumerate(arrays):
     *         stacked[i] = _asarray_compat(arr)             # <<<<<<<<<<<<<<
     *
     *     # index may box values
     */
        __pyx_t_1 = __pyx_pf_6pandas_9internals_13_stack_arrays__asarray_compat(__pyx_v__asarray_compat, __pyx_v_arr); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3976; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (unlikely(PyObject_SetItem(__pyx_v_stacked, __pyx_v_i, __pyx_t_1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3976; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3977:

     3978:     # index may box values

     3979:     if ref_items.is_unique:

      /* "pandas/internals.pyx":3979
     *
     *     # index may box values
     *     if ref_items.is_unique:             # <<<<<<<<<<<<<<
     *         items = ref_items[ref_items.isin(names)]
     *     else:
     */
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_ref_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3979; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3979; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_9) {

     3980:         items = ref_items[ref_items.isin(names)]

        /* "pandas/internals.pyx":3980
     *     # index may box values
     *     if ref_items.is_unique:
     *         items = ref_items[ref_items.isin(names)]             # <<<<<<<<<<<<<<
     *     else:
     *         # a mi
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_ref_items, __pyx_n_s_isin); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(__pyx_v_names);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_names);
        __Pyx_GIVEREF(__pyx_v_names);
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3980; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyObject_GetItem(__pyx_v_ref_items, __pyx_t_1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3980; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_v_items = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L7;
      }
      /*else*/ {

     3981:     else:

     3982:         # a mi

     3983:         if isinstance(ref_items, MultiIndex):

        /* "pandas/internals.pyx":3983
     *     else:
     *         # a mi
     *         if isinstance(ref_items, MultiIndex):             # <<<<<<<<<<<<<<
     *             names = MultiIndex.from_tuples(names)
     *             items = ref_items[ref_items.isin(names)]
     */
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_MultiIndex); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3983; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_9 = PyObject_IsInstance(__pyx_v_ref_items, __pyx_t_4); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3983; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_10 = (__pyx_t_9 != 0);
        if (__pyx_t_10) {

     3984:             names = MultiIndex.from_tuples(names)

          /* "pandas/internals.pyx":3984
     *         # a mi
     *         if isinstance(ref_items, MultiIndex):
     *             names = MultiIndex.from_tuples(names)             # <<<<<<<<<<<<<<
     *             items = ref_items[ref_items.isin(names)]
     *
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_MultiIndex); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3984; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_t_4, __pyx_n_s_from_tuples); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3984; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3984; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_names);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_names);
          __Pyx_GIVEREF(__pyx_v_names);
          __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_4, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3984; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF_SET(__pyx_v_names, __pyx_t_2);
          __pyx_t_2 = 0;

     3985:             items = ref_items[ref_items.isin(names)]

          /* "pandas/internals.pyx":3985
     *         if isinstance(ref_items, MultiIndex):
     *             names = MultiIndex.from_tuples(names)
     *             items = ref_items[ref_items.isin(names)]             # <<<<<<<<<<<<<<
     *
     *         # plain old dups
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_ref_items, __pyx_n_s_isin); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3985; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3985; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_INCREF(__pyx_v_names);
          PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_names);
          __Pyx_GIVEREF(__pyx_v_names);
          __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_4, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3985; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_GetItem(__pyx_v_ref_items, __pyx_t_1); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3985; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
          __pyx_v_items = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L8;
        }
        /*else*/ {

     3986:

     3987:         # plain old dups

     3988:         else:

     3989:             items = _ensure_index([n for n in names if n in ref_items])

          /* "pandas/internals.pyx":3989
     *         # plain old dups
     *         else:
     *             items = _ensure_index([n for n in names if n in ref_items])             # <<<<<<<<<<<<<<
     *             if len(items) != len(stacked):
     *                 raise ValueError("invalid names passed _stack_arrays")
     */
          __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_ensure_index); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          if (PyList_CheckExact(__pyx_v_names) || PyTuple_CheckExact(__pyx_v_names)) {
            __pyx_t_2 = __pyx_v_names; __Pyx_INCREF(__pyx_t_2); __pyx_t_7 = 0;
            __pyx_t_8 = NULL;
          } else {
            __pyx_t_7 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_names); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_2);
            __pyx_t_8 = Py_TYPE(__pyx_t_2)->tp_iternext;
          }
          for (;;) {
            if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_2)) {
              if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_2)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_3 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_2)) {
              if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_7); __Pyx_INCREF(__pyx_t_3); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_3 = PySequence_ITEM(__pyx_t_2, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_3 = __pyx_t_8(__pyx_t_2);
              if (unlikely(!__pyx_t_3)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_3);
            }
            __Pyx_XDECREF_SET(__pyx_v_n, __pyx_t_3);
            __pyx_t_3 = 0;
            __pyx_t_10 = (__Pyx_PySequence_Contains(__pyx_v_n, __pyx_v_ref_items, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_9 = (__pyx_t_10 != 0);
            if (__pyx_t_9) {
              if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_v_n))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              goto __pyx_L11;
            }
            __pyx_L11:;
          }
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
          __Pyx_GIVEREF(__pyx_t_1);
          __pyx_t_1 = 0;
          __pyx_t_1 = PyObject_Call(__pyx_t_4, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3989; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_v_items = __pyx_t_1;
          __pyx_t_1 = 0;

     3990:             if len(items) != len(stacked):

          /* "pandas/internals.pyx":3990
     *         else:
     *             items = _ensure_index([n for n in names if n in ref_items])
     *             if len(items) != len(stacked):             # <<<<<<<<<<<<<<
     *                 raise ValueError("invalid names passed _stack_arrays")
     *
     */
          __pyx_t_7 = PyObject_Length(__pyx_v_items); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_11 = PyObject_Length(__pyx_v_stacked); if (unlikely(__pyx_t_11 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3990; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = ((__pyx_t_7 != __pyx_t_11) != 0);
          if (__pyx_t_9) {

     3991:                 raise ValueError("invalid names passed _stack_arrays")

            /* "pandas/internals.pyx":3991
     *             items = _ensure_index([n for n in names if n in ref_items])
     *             if len(items) != len(stacked):
     *                 raise ValueError("invalid names passed _stack_arrays")             # <<<<<<<<<<<<<<
     *
     *     return items, stacked, placement
     */
            __pyx_t_1 = PyObject_Call(__pyx_builtin_ValueError, __pyx_tuple__132, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3991; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __Pyx_Raise(__pyx_t_1, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3991; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
        }
        __pyx_L8:;
      }
      __pyx_L7:;

      /* "pandas/internals.pyx":3991
     *             items = _ensure_index([n for n in names if n in ref_items])
     *             if len(items) != len(stacked):
     *                 raise ValueError("invalid names passed _stack_arrays")             # <<<<<<<<<<<<<<
     *
     *     return items, stacked, placement
     */
      __pyx_tuple__132 = PyTuple_Pack(1, __pyx_kp_s_invalid_names_passed__stack_arra); if (unlikely(!__pyx_tuple__132)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3991; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__132);
      __Pyx_GIVEREF(__pyx_tuple__132);

     3992:

     3993:     return items, stacked, placement

      /* "pandas/internals.pyx":3993
     *                 raise ValueError("invalid names passed _stack_arrays")
     *
     *     return items, stacked, placement             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3993; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_items);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_items);
      __Pyx_GIVEREF(__pyx_v_items);
      __Pyx_INCREF(__pyx_v_stacked);
      PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_stacked);
      __Pyx_GIVEREF(__pyx_v_stacked);
      __Pyx_INCREF(__pyx_v_placement);
      PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_placement);
      __Pyx_GIVEREF(__pyx_v_placement);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

     3994:

     3995:

     3996: def _blocks_to_series_dict(blocks, index=None):

    /* "pandas/internals.pyx":3996
     *
     *
     * def _blocks_to_series_dict(blocks, index=None):             # <<<<<<<<<<<<<<
     *     from pandas.core.series import Series
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_21_blocks_to_series_dict(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_21_blocks_to_series_dict = {__Pyx_NAMESTR("_blocks_to_series_dict"), (PyCFunction)__pyx_pw_6pandas_9internals_21_blocks_to_series_dict, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_21_blocks_to_series_dict(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_v_index = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_blocks_to_series_dict (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_blocks,&__pyx_n_s_index,0};
        PyObject* values[2] = {0,0};
        values[1] = ((PyObject *)Py_None);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_index);
              if (value) { values[1] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_blocks_to_series_dict") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3996; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_blocks = values[0];
        __pyx_v_index = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_blocks_to_series_dict", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3996; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._blocks_to_series_dict", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_20_blocks_to_series_dict(__pyx_self, __pyx_v_blocks, __pyx_v_index);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_20_blocks_to_series_dict(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_blocks, PyObject *__pyx_v_index) {
      PyObject *__pyx_v_Series = NULL;
      PyObject *__pyx_v_series_dict = NULL;
      PyObject *__pyx_v_block = NULL;
      PyObject *__pyx_v_item = NULL;
      PyObject *__pyx_v_vec = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_blocks_to_series_dict", 0);

      /* "pandas/internals.pyx":3996
     *
     *
     * def _blocks_to_series_dict(blocks, index=None):             # <<<<<<<<<<<<<<
     *     from pandas.core.series import Series
     *
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals._blocks_to_series_dict", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_Series);
      __Pyx_XDECREF(__pyx_v_series_dict);
      __Pyx_XDECREF(__pyx_v_block);
      __Pyx_XDECREF(__pyx_v_item);
      __Pyx_XDECREF(__pyx_v_vec);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":3996
     *
     *
     * def _blocks_to_series_dict(blocks, index=None):             # <<<<<<<<<<<<<<
     *     from pandas.core.series import Series
     *
     */
      __pyx_tuple__762 = PyTuple_Pack(7, __pyx_n_s_blocks, __pyx_n_s_index, __pyx_n_s_Series, __pyx_n_s_series_dict, __pyx_n_s_block, __pyx_n_s_item, __pyx_n_s_vec); if (unlikely(!__pyx_tuple__762)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3996; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__762);
      __Pyx_GIVEREF(__pyx_tuple__762);

      /* "pandas/internals.pyx":3996
     *
     *
     * def _blocks_to_series_dict(blocks, index=None):             # <<<<<<<<<<<<<<
     *     from pandas.core.series import Series
     *
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_21_blocks_to_series_dict, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3996; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_blocks_to_series_dict, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3996; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__763 = (PyObject*)__Pyx_PyCode_New(2, 0, 7, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__762, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_blocks_to_series_dict, 3996, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__763)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3996; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     3997:     from pandas.core.series import Series

      /* "pandas/internals.pyx":3997
     *
     * def _blocks_to_series_dict(blocks, index=None):
     *     from pandas.core.series import Series             # <<<<<<<<<<<<<<
     *
     *     series_dict = {}
     */
      __pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_n_s_Series);
      PyList_SET_ITEM(__pyx_t_1, 0, __pyx_n_s_Series);
      __Pyx_GIVEREF(__pyx_n_s_Series);
      __pyx_t_2 = __Pyx_Import(__pyx_n_s_pandas_core_series, __pyx_t_1, -1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = __Pyx_ImportFrom(__pyx_t_2, __pyx_n_s_Series); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3997; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_t_1);
      __pyx_v_Series = __pyx_t_1;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     3998:

     3999:     series_dict = {}

      /* "pandas/internals.pyx":3999
     *     from pandas.core.series import Series
     *
     *     series_dict = {}             # <<<<<<<<<<<<<<
     *
     *     for block in blocks:
     */
      __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 3999; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __pyx_v_series_dict = ((PyObject*)__pyx_t_2);
      __pyx_t_2 = 0;

     4000:

     4001:     for block in blocks:

      /* "pandas/internals.pyx":4001
     *     series_dict = {}
     *
     *     for block in blocks:             # <<<<<<<<<<<<<<
     *         for item, vec in zip(block.items, block.values):
     *             series_dict[item] = Series(vec, index=index, name=item)
     */
      if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
        __pyx_t_2 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_2); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4001; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_4 = Py_TYPE(__pyx_t_2)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4001; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4001; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_2)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_3); __Pyx_INCREF(__pyx_t_1); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4001; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_1 = PySequence_ITEM(__pyx_t_2, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4001; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_1 = __pyx_t_4(__pyx_t_2);
          if (unlikely(!__pyx_t_1)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4001; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_1);
        }
        __Pyx_XDECREF_SET(__pyx_v_block, __pyx_t_1);
        __pyx_t_1 = 0;

     4002:         for item, vec in zip(block.items, block.values):

        /* "pandas/internals.pyx":4002
     *
     *     for block in blocks:
     *         for item, vec in zip(block.items, block.values):             # <<<<<<<<<<<<<<
     *             series_dict[item] = Series(vec, index=index, name=item)
     *     return series_dict
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_zip); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_block, __pyx_n_s_values); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_6);
        __Pyx_GIVEREF(__pyx_t_6);
        __pyx_t_5 = 0;
        __pyx_t_6 = 0;
        __pyx_t_6 = PyObject_Call(__pyx_t_1, __pyx_t_7, NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        if (PyList_CheckExact(__pyx_t_6) || PyTuple_CheckExact(__pyx_t_6)) {
          __pyx_t_7 = __pyx_t_6; __Pyx_INCREF(__pyx_t_7); __pyx_t_8 = 0;
          __pyx_t_9 = NULL;
        } else {
          __pyx_t_8 = -1; __pyx_t_7 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_9 = Py_TYPE(__pyx_t_7)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        for (;;) {
          if (!__pyx_t_9 && PyList_CheckExact(__pyx_t_7)) {
            if (__pyx_t_8 >= PyList_GET_SIZE(__pyx_t_7)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyList_GET_ITEM(__pyx_t_7, __pyx_t_8); __Pyx_INCREF(__pyx_t_6); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_7, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_9 && PyTuple_CheckExact(__pyx_t_7)) {
            if (__pyx_t_8 >= PyTuple_GET_SIZE(__pyx_t_7)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_6 = PyTuple_GET_ITEM(__pyx_t_7, __pyx_t_8); __Pyx_INCREF(__pyx_t_6); __pyx_t_8++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_6 = PySequence_ITEM(__pyx_t_7, __pyx_t_8); __pyx_t_8++; if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_6 = __pyx_t_9(__pyx_t_7);
            if (unlikely(!__pyx_t_6)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_6);
          }
          if ((likely(PyTuple_CheckExact(__pyx_t_6))) || (PyList_CheckExact(__pyx_t_6))) {
            PyObject* sequence = __pyx_t_6;
            #if CYTHON_COMPILING_IN_CPYTHON
            Py_ssize_t size = Py_SIZE(sequence);
            #else
            Py_ssize_t size = PySequence_Size(sequence);
            #endif
            if (unlikely(size != 2)) {
              if (size > 2) __Pyx_RaiseTooManyValuesError(2);
              else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
              {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            #if CYTHON_COMPILING_IN_CPYTHON
            if (likely(PyTuple_CheckExact(sequence))) {
              __pyx_t_1 = PyTuple_GET_ITEM(sequence, 0);
              __pyx_t_5 = PyTuple_GET_ITEM(sequence, 1);
            } else {
              __pyx_t_1 = PyList_GET_ITEM(sequence, 0);
              __pyx_t_5 = PyList_GET_ITEM(sequence, 1);
            }
            __Pyx_INCREF(__pyx_t_1);
            __Pyx_INCREF(__pyx_t_5);
            #else
            __pyx_t_1 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_1);
            __pyx_t_5 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            #endif
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          } else {
            Py_ssize_t index = -1;
            __pyx_t_10 = PyObject_GetIter(__pyx_t_6); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_10);
            __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
            __pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext;
            index = 0; __pyx_t_1 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_1)) goto __pyx_L7_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_1);
            index = 1; __pyx_t_5 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_5)) goto __pyx_L7_unpacking_failed;
            __Pyx_GOTREF(__pyx_t_5);
            if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_t_11 = NULL;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            goto __pyx_L8_unpacking_done;
            __pyx_L7_unpacking_failed:;
            __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
            __pyx_t_11 = NULL;
            if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4002; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __pyx_L8_unpacking_done:;
          }
          __Pyx_XDECREF_SET(__pyx_v_item, __pyx_t_1);
          __pyx_t_1 = 0;
          __Pyx_XDECREF_SET(__pyx_v_vec, __pyx_t_5);
          __pyx_t_5 = 0;

     4003:             series_dict[item] = Series(vec, index=index, name=item)

          /* "pandas/internals.pyx":4003
     *     for block in blocks:
     *         for item, vec in zip(block.items, block.values):
     *             series_dict[item] = Series(vec, index=index, name=item)             # <<<<<<<<<<<<<<
     *     return series_dict
     *
     */
          __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_INCREF(__pyx_v_vec);
          PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_vec);
          __Pyx_GIVEREF(__pyx_v_vec);
          __pyx_t_5 = PyDict_New(); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_index, __pyx_v_index) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (PyDict_SetItem(__pyx_t_5, __pyx_n_s_name, __pyx_v_item) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_1 = PyObject_Call(__pyx_v_Series, __pyx_t_6, __pyx_t_5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          if (unlikely(PyDict_SetItem(__pyx_v_series_dict, __pyx_v_item, __pyx_t_1) < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4003; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        }
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;

     4004:     return series_dict

      /* "pandas/internals.pyx":4004
     *         for item, vec in zip(block.items, block.values):
     *             series_dict[item] = Series(vec, index=index, name=item)
     *     return series_dict             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_series_dict);
      __pyx_r = __pyx_v_series_dict;
      goto __pyx_L0;

     4005:

     4006:

     4007: def _interleaved_dtype(blocks):

    /* "pandas/internals.pyx":4007
     *
     *
     * def _interleaved_dtype(blocks):             # <<<<<<<<<<<<<<
     *     if not len(blocks):
     *         return None
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_23_interleaved_dtype(PyObject *__pyx_self, PyObject *__pyx_v_blocks); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_23_interleaved_dtype = {__Pyx_NAMESTR("_interleaved_dtype"), (PyCFunction)__pyx_pw_6pandas_9internals_23_interleaved_dtype, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_23_interleaved_dtype(PyObject *__pyx_self, PyObject *__pyx_v_blocks) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interleaved_dtype (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_22_interleaved_dtype(__pyx_self, ((PyObject *)__pyx_v_blocks));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":4007
     *
     *
     * def _interleaved_dtype(blocks):             # <<<<<<<<<<<<<<
     *     if not len(blocks):
     *         return None
     */

    static PyObject *__pyx_pf_6pandas_9internals_22_interleaved_dtype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_blocks) {
      PyObject *__pyx_v_counts = NULL;
      PyObject *__pyx_v_x = NULL;
      PyObject *__pyx_v__lcd_dtype = 0;
      PyObject *__pyx_v_have_int = NULL;
      PyObject *__pyx_v_have_bool = NULL;
      PyObject *__pyx_v_have_object = NULL;
      PyObject *__pyx_v_have_float = NULL;
      PyObject *__pyx_v_have_complex = NULL;
      PyObject *__pyx_v_have_dt64 = NULL;
      PyObject *__pyx_v_have_td64 = NULL;
      CYTHON_UNUSED PyObject *__pyx_v_have_sparse = NULL;
      PyObject *__pyx_v_have_numeric = NULL;
      PyObject *__pyx_v_lcd = NULL;
      PyObject *__pyx_v_kinds = NULL;
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_interleaved_dtype", 0);

      /* "pandas/internals.pyx":4007
     *
     *
     * def _interleaved_dtype(blocks):             # <<<<<<<<<<<<<<
     *     if not len(blocks):
     *         return None
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_13);
      __Pyx_AddTraceback("pandas.internals._interleaved_dtype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_counts);
      __Pyx_XDECREF(__pyx_v_x);
      __Pyx_XDECREF(__pyx_v__lcd_dtype);
      __Pyx_XDECREF(__pyx_v_have_int);
      __Pyx_XDECREF(__pyx_v_have_bool);
      __Pyx_XDECREF(__pyx_v_have_object);
      __Pyx_XDECREF(__pyx_v_have_float);
      __Pyx_XDECREF(__pyx_v_have_complex);
      __Pyx_XDECREF(__pyx_v_have_dt64);
      __Pyx_XDECREF(__pyx_v_have_td64);
      __Pyx_XDECREF(__pyx_v_have_sparse);
      __Pyx_XDECREF(__pyx_v_have_numeric);
      __Pyx_XDECREF(__pyx_v_lcd);
      __Pyx_XDECREF(__pyx_v_kinds);
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4007
     *
     *
     * def _interleaved_dtype(blocks):             # <<<<<<<<<<<<<<
     *     if not len(blocks):
     *         return None
     */
      __pyx_tuple__764 = PyTuple_Pack(17, __pyx_n_s_blocks, __pyx_n_s_counts, __pyx_n_s_x_2, __pyx_n_s_lcd_dtype, __pyx_n_s_lcd_dtype, __pyx_n_s_have_int, __pyx_n_s_have_bool, __pyx_n_s_have_object, __pyx_n_s_have_float, __pyx_n_s_have_complex, __pyx_n_s_have_dt64, __pyx_n_s_have_td64, __pyx_n_s_have_sparse, __pyx_n_s_have_numeric, __pyx_n_s_lcd, __pyx_n_s_kinds, __pyx_n_s_i); if (unlikely(!__pyx_tuple__764)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__764);
      __Pyx_GIVEREF(__pyx_tuple__764);

      /* "pandas/internals.pyx":4007
     *
     *
     * def _interleaved_dtype(blocks):             # <<<<<<<<<<<<<<
     *     if not len(blocks):
     *         return None
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_23_interleaved_dtype, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_interleaved_dtype, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__765 = (PyObject*)__Pyx_PyCode_New(1, 0, 17, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__764, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_interleaved_dtype, 4007, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__765)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4007; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4008:     if not len(blocks):

      /* "pandas/internals.pyx":4008
     *
     * def _interleaved_dtype(blocks):
     *     if not len(blocks):             # <<<<<<<<<<<<<<
     *         return None
     *
     */
      __pyx_t_1 = PyObject_Length(__pyx_v_blocks); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4008; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = ((!(__pyx_t_1 != 0)) != 0);
      if (__pyx_t_2) {

     4009:         return None

        /* "pandas/internals.pyx":4009
     * def _interleaved_dtype(blocks):
     *     if not len(blocks):
     *         return None             # <<<<<<<<<<<<<<
     *
     *     counts = defaultdict(lambda: [])
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(Py_None);
        __pyx_r = Py_None;
        goto __pyx_L0;
      }

     4010:

     4011:     counts = defaultdict(lambda: [])

    /* "pandas/internals.pyx":4011
     *         return None
     *
     *     counts = defaultdict(lambda: [])             # <<<<<<<<<<<<<<
     *     for x in blocks:
     *         counts[type(x)].append(x)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18_interleaved_dtype_2lambda18(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_18_interleaved_dtype_2lambda18 = {__Pyx_NAMESTR("lambda18"), (PyCFunction)__pyx_pw_6pandas_9internals_18_interleaved_dtype_2lambda18, METH_NOARGS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_18_interleaved_dtype_2lambda18(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda18 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda18(__pyx_self);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda18(CYTHON_UNUSED PyObject *__pyx_self) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda18", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4011; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals._interleaved_dtype.lambda18", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4011
     *         return None
     *
     *     counts = defaultdict(lambda: [])             # <<<<<<<<<<<<<<
     *     for x in blocks:
     *         counts[type(x)].append(x)
     */
      __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_defaultdict); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4011; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18_interleaved_dtype_2lambda18, 0, __pyx_n_s_interleaved_dtype_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4011; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4011; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_3, __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4011; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_v_counts = __pyx_t_4;
      __pyx_t_4 = 0;

     4012:     for x in blocks:

      /* "pandas/internals.pyx":4012
     *
     *     counts = defaultdict(lambda: [])
     *     for x in blocks:             # <<<<<<<<<<<<<<
     *         counts[type(x)].append(x)
     *
     */
      if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
        __pyx_t_4 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_4); __pyx_t_1 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_1 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4012; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_1 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_1); __Pyx_INCREF(__pyx_t_5); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4012; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4012; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_1 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_5 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_1); __Pyx_INCREF(__pyx_t_5); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4012; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_5 = PySequence_ITEM(__pyx_t_4, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4012; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_5 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_5)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4012; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_5);
        }
        __Pyx_XDECREF_SET(__pyx_v_x, __pyx_t_5);
        __pyx_t_5 = 0;

     4013:         counts[type(x)].append(x)

        /* "pandas/internals.pyx":4013
     *     counts = defaultdict(lambda: [])
     *     for x in blocks:
     *         counts[type(x)].append(x)             # <<<<<<<<<<<<<<
     *
     *     def _lcd_dtype(l):
     */
        __pyx_t_5 = PyObject_GetItem(__pyx_v_counts, ((PyObject *)Py_TYPE(__pyx_v_x))); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4013; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = __Pyx_PyObject_Append(__pyx_t_5, __pyx_v_x); if (unlikely(__pyx_t_7 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4013; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     4014:

     4015:     def _lcd_dtype(l):

    /* "pandas/internals.pyx":4015
     *         counts[type(x)].append(x)
     *
     *     def _lcd_dtype(l):             # <<<<<<<<<<<<<<
     *         """ find the lowest dtype that can accomodate the given types """
     *         m = l[0].dtype
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_18_interleaved_dtype_1_lcd_dtype(PyObject *__pyx_self, PyObject *__pyx_v_l); /*proto*/
    static char __pyx_doc_6pandas_9internals_18_interleaved_dtype__lcd_dtype[] = " find the lowest dtype that can accomodate the given types ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_18_interleaved_dtype_1_lcd_dtype = {__Pyx_NAMESTR("_lcd_dtype"), (PyCFunction)__pyx_pw_6pandas_9internals_18_interleaved_dtype_1_lcd_dtype, METH_O, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_18_interleaved_dtype__lcd_dtype)};
    static PyObject *__pyx_pw_6pandas_9internals_18_interleaved_dtype_1_lcd_dtype(PyObject *__pyx_self, PyObject *__pyx_v_l) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_lcd_dtype (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_18_interleaved_dtype__lcd_dtype(__pyx_self, ((PyObject *)__pyx_v_l));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_18_interleaved_dtype__lcd_dtype(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_l) {
      PyObject *__pyx_v_m = NULL;
      PyObject *__pyx_v_x = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_lcd_dtype", 0);

      /* "pandas/internals.pyx":4015
     *         counts[type(x)].append(x)
     *
     *     def _lcd_dtype(l):             # <<<<<<<<<<<<<<
     *         """ find the lowest dtype that can accomodate the given types """
     *         m = l[0].dtype
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_AddTraceback("pandas.internals._interleaved_dtype._lcd_dtype", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_m);
      __Pyx_XDECREF(__pyx_v_x);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4015
     *         counts[type(x)].append(x)
     *
     *     def _lcd_dtype(l):             # <<<<<<<<<<<<<<
     *         """ find the lowest dtype that can accomodate the given types """
     *         m = l[0].dtype
     */
      __pyx_tuple__134 = PyTuple_Pack(3, __pyx_n_s_l, __pyx_n_s_m, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__134)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4015; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__134);
      __Pyx_GIVEREF(__pyx_tuple__134);

      /* "pandas/internals.pyx":4015
     *         counts[type(x)].append(x)
     *
     *     def _lcd_dtype(l):             # <<<<<<<<<<<<<<
     *         """ find the lowest dtype that can accomodate the given types """
     *         m = l[0].dtype
     */
      __pyx_t_4 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_18_interleaved_dtype_1_lcd_dtype, 0, __pyx_n_s_interleaved_dtype_locals__lcd_d, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), ((PyObject *)__pyx_codeobj__135)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4015; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v__lcd_dtype = __pyx_t_4;
      __pyx_t_4 = 0;
      __pyx_codeobj__135 = (PyObject*)__Pyx_PyCode_New(1, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__134, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_lcd_dtype, 4015, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__135)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4015; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4016:         """ find the lowest dtype that can accomodate the given types """

     4017:         m = l[0].dtype

      /* "pandas/internals.pyx":4017
     *     def _lcd_dtype(l):
     *         """ find the lowest dtype that can accomodate the given types """
     *         m = l[0].dtype             # <<<<<<<<<<<<<<
     *         for x in l[1:]:
     *             if x.dtype.itemsize > m.itemsize:
     */
      __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_l, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_1 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4017; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4017; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_v_m = __pyx_t_2;
      __pyx_t_2 = 0;

     4018:         for x in l[1:]:

      /* "pandas/internals.pyx":4018
     *         """ find the lowest dtype that can accomodate the given types """
     *         m = l[0].dtype
     *         for x in l[1:]:             # <<<<<<<<<<<<<<
     *             if x.dtype.itemsize > m.itemsize:
     *                 m = x.dtype
     */
      __pyx_t_2 = __Pyx_PyObject_GetSlice(__pyx_v_l, 1, 0, NULL, NULL, &__pyx_slice__133, 1, 0, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
        __pyx_t_1 = __pyx_t_2; __Pyx_INCREF(__pyx_t_1); __pyx_t_3 = 0;
        __pyx_t_4 = NULL;
      } else {
        __pyx_t_3 = -1; __pyx_t_1 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_4 = Py_TYPE(__pyx_t_1)->tp_iternext;
      }
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      for (;;) {
        if (!__pyx_t_4 && PyList_CheckExact(__pyx_t_1)) {
          if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_4 && PyTuple_CheckExact(__pyx_t_1)) {
          if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_1)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_1, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_2 = PySequence_ITEM(__pyx_t_1, __pyx_t_3); __pyx_t_3++; if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_2 = __pyx_t_4(__pyx_t_1);
          if (unlikely(!__pyx_t_2)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_2);
        }
        __Pyx_XDECREF_SET(__pyx_v_x, __pyx_t_2);
        __pyx_t_2 = 0;

      /* "pandas/internals.pyx":4018
     *         """ find the lowest dtype that can accomodate the given types """
     *         m = l[0].dtype
     *         for x in l[1:]:             # <<<<<<<<<<<<<<
     *             if x.dtype.itemsize > m.itemsize:
     *                 m = x.dtype
     */
      __pyx_slice__133 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__133)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4018; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__133);
      __Pyx_GIVEREF(__pyx_slice__133);

     4019:             if x.dtype.itemsize > m.itemsize:

        /* "pandas/internals.pyx":4019
     *         m = l[0].dtype
     *         for x in l[1:]:
     *             if x.dtype.itemsize > m.itemsize:             # <<<<<<<<<<<<<<
     *                 m = x.dtype
     *         return m
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_dtype); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4019; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4019; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_m, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4019; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_6 = PyObject_RichCompare(__pyx_t_5, __pyx_t_2, Py_GT); __Pyx_XGOTREF(__pyx_t_6); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4019; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_6); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4019; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        if (__pyx_t_7) {

     4020:                 m = x.dtype

          /* "pandas/internals.pyx":4020
     *         for x in l[1:]:
     *             if x.dtype.itemsize > m.itemsize:
     *                 m = x.dtype             # <<<<<<<<<<<<<<
     *         return m
     *
     */
          __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_dtype); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4020; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __Pyx_DECREF_SET(__pyx_v_m, __pyx_t_6);
          __pyx_t_6 = 0;
          goto __pyx_L5;
        }
        __pyx_L5:;
      }
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     4021:         return m

      /* "pandas/internals.pyx":4021
     *             if x.dtype.itemsize > m.itemsize:
     *                 m = x.dtype
     *         return m             # <<<<<<<<<<<<<<
     *
     *     have_int = len(counts[IntBlock]) > 0
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_m);
      __pyx_r = __pyx_v_m;
      goto __pyx_L0;

     4022:

     4023:     have_int = len(counts[IntBlock]) > 0

      /* "pandas/internals.pyx":4023
     *         return m
     *
     *     have_int = len(counts[IntBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_bool = len(counts[BoolBlock]) > 0
     *     have_object = len(counts[ObjectBlock]) > 0
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_IntBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4023; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_GetItem(__pyx_v_counts, __pyx_t_4); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4023; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4023; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4023; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_v_have_int = __pyx_t_5;
      __pyx_t_5 = 0;

     4024:     have_bool = len(counts[BoolBlock]) > 0

      /* "pandas/internals.pyx":4024
     *
     *     have_int = len(counts[IntBlock]) > 0
     *     have_bool = len(counts[BoolBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_object = len(counts[ObjectBlock]) > 0
     *     have_float = len(counts[FloatBlock]) > 0
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_BoolBlock); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4024; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyObject_GetItem(__pyx_v_counts, __pyx_t_5); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4024; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4024; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4024; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_have_bool = __pyx_t_4;
      __pyx_t_4 = 0;

     4025:     have_object = len(counts[ObjectBlock]) > 0

      /* "pandas/internals.pyx":4025
     *     have_int = len(counts[IntBlock]) > 0
     *     have_bool = len(counts[BoolBlock]) > 0
     *     have_object = len(counts[ObjectBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_float = len(counts[FloatBlock]) > 0
     *     have_complex = len(counts[ComplexBlock]) > 0
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_ObjectBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4025; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_GetItem(__pyx_v_counts, __pyx_t_4); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4025; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4025; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4025; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_v_have_object = __pyx_t_5;
      __pyx_t_5 = 0;

     4026:     have_float = len(counts[FloatBlock]) > 0

      /* "pandas/internals.pyx":4026
     *     have_bool = len(counts[BoolBlock]) > 0
     *     have_object = len(counts[ObjectBlock]) > 0
     *     have_float = len(counts[FloatBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_complex = len(counts[ComplexBlock]) > 0
     *     have_dt64 = len(counts[DatetimeBlock]) > 0
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_FloatBlock); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4026; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyObject_GetItem(__pyx_v_counts, __pyx_t_5); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4026; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4026; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4026; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_have_float = __pyx_t_4;
      __pyx_t_4 = 0;

     4027:     have_complex = len(counts[ComplexBlock]) > 0

      /* "pandas/internals.pyx":4027
     *     have_object = len(counts[ObjectBlock]) > 0
     *     have_float = len(counts[FloatBlock]) > 0
     *     have_complex = len(counts[ComplexBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_dt64 = len(counts[DatetimeBlock]) > 0
     *     have_td64 = len(counts[TimeDeltaBlock]) > 0
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_ComplexBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4027; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_GetItem(__pyx_v_counts, __pyx_t_4); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4027; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4027; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4027; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_v_have_complex = __pyx_t_5;
      __pyx_t_5 = 0;

     4028:     have_dt64 = len(counts[DatetimeBlock]) > 0

      /* "pandas/internals.pyx":4028
     *     have_float = len(counts[FloatBlock]) > 0
     *     have_complex = len(counts[ComplexBlock]) > 0
     *     have_dt64 = len(counts[DatetimeBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_td64 = len(counts[TimeDeltaBlock]) > 0
     *     have_sparse = len(counts[SparseBlock]) > 0
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_DatetimeBlock); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4028; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyObject_GetItem(__pyx_v_counts, __pyx_t_5); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4028; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4028; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4028; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_have_dt64 = __pyx_t_4;
      __pyx_t_4 = 0;

     4029:     have_td64 = len(counts[TimeDeltaBlock]) > 0

      /* "pandas/internals.pyx":4029
     *     have_complex = len(counts[ComplexBlock]) > 0
     *     have_dt64 = len(counts[DatetimeBlock]) > 0
     *     have_td64 = len(counts[TimeDeltaBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_sparse = len(counts[SparseBlock]) > 0
     *     have_numeric = have_float or have_complex or have_int
     */
      __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_TimeDeltaBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4029; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_t_5 = PyObject_GetItem(__pyx_v_counts, __pyx_t_4); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4029; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_5);
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_5); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4029; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_5 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4029; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_v_have_td64 = __pyx_t_5;
      __pyx_t_5 = 0;

     4030:     have_sparse = len(counts[SparseBlock]) > 0

      /* "pandas/internals.pyx":4030
     *     have_dt64 = len(counts[DatetimeBlock]) > 0
     *     have_td64 = len(counts[TimeDeltaBlock]) > 0
     *     have_sparse = len(counts[SparseBlock]) > 0             # <<<<<<<<<<<<<<
     *     have_numeric = have_float or have_complex or have_int
     *
     */
      __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseBlock); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4030; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_5);
      __pyx_t_4 = PyObject_GetItem(__pyx_v_counts, __pyx_t_5); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4030; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
      __pyx_t_1 = PyObject_Length(__pyx_t_4); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4030; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_t_4 = __Pyx_PyBool_FromLong((__pyx_t_1 > 0)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4030; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_have_sparse = __pyx_t_4;
      __pyx_t_4 = 0;

     4031:     have_numeric = have_float or have_complex or have_int

      /* "pandas/internals.pyx":4031
     *     have_td64 = len(counts[TimeDeltaBlock]) > 0
     *     have_sparse = len(counts[SparseBlock]) > 0
     *     have_numeric = have_float or have_complex or have_int             # <<<<<<<<<<<<<<
     *
     *     if (have_object or
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_float); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4031; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_2) {
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_complex); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4031; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (!__pyx_t_2) {
          __Pyx_INCREF(__pyx_v_have_int);
          __pyx_t_4 = __pyx_v_have_int;
        } else {
          __Pyx_INCREF(__pyx_v_have_complex);
          __pyx_t_4 = __pyx_v_have_complex;
        }
        __pyx_t_5 = __pyx_t_4;
        __pyx_t_4 = 0;
      } else {
        __Pyx_INCREF(__pyx_v_have_float);
        __pyx_t_5 = __pyx_v_have_float;
      }
      __pyx_v_have_numeric = __pyx_t_5;
      __pyx_t_5 = 0;

     4032:

     4033:     if (have_object or

      /* "pandas/internals.pyx":4033
     *     have_numeric = have_float or have_complex or have_int
     *
     *     if (have_object or             # <<<<<<<<<<<<<<
     *         (have_bool and have_numeric) or
     *             (have_numeric and (have_dt64 or have_td64))):
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_object); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4033; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (!__pyx_t_2) {

     4034:         (have_bool and have_numeric) or

        /* "pandas/internals.pyx":4034
     *
     *     if (have_object or
     *         (have_bool and have_numeric) or             # <<<<<<<<<<<<<<
     *             (have_numeric and (have_dt64 or have_td64))):
     *         return np.dtype(object)
     */
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_have_bool); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4034; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (__pyx_t_8) {
          __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_have_numeric); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4034; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_10 = __pyx_t_9;
        } else {
          __pyx_t_10 = __pyx_t_8;
        }
        if (!__pyx_t_10) {

     4035:             (have_numeric and (have_dt64 or have_td64))):

          /* "pandas/internals.pyx":4035
     *     if (have_object or
     *         (have_bool and have_numeric) or
     *             (have_numeric and (have_dt64 or have_td64))):             # <<<<<<<<<<<<<<
     *         return np.dtype(object)
     *     elif have_bool:
     */
          __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_have_numeric); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4035; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (__pyx_t_8) {
            __pyx_t_9 = __Pyx_PyObject_IsTrue(__pyx_v_have_dt64); if (unlikely(__pyx_t_9 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4035; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            if (!__pyx_t_9) {
              __pyx_t_11 = __Pyx_PyObject_IsTrue(__pyx_v_have_td64); if (unlikely(__pyx_t_11 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4035; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              __pyx_t_12 = __pyx_t_11;
            } else {
              __pyx_t_12 = __pyx_t_9;
            }
            __pyx_t_9 = __pyx_t_12;
          } else {
            __pyx_t_9 = __pyx_t_8;
          }
          __pyx_t_8 = __pyx_t_9;
        } else {
          __pyx_t_8 = __pyx_t_10;
        }
        __pyx_t_10 = __pyx_t_8;
      } else {
        __pyx_t_10 = __pyx_t_2;
      }
      if (__pyx_t_10) {

     4036:         return np.dtype(object)

        /* "pandas/internals.pyx":4036
     *         (have_bool and have_numeric) or
     *             (have_numeric and (have_dt64 or have_td64))):
     *         return np.dtype(object)             # <<<<<<<<<<<<<<
     *     elif have_bool:
     *         return np.dtype(bool)
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4036; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_INCREF(__pyx_builtin_object);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_builtin_object);
        __Pyx_GIVEREF(__pyx_builtin_object);
        __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4036; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

     4037:     elif have_bool:

      /* "pandas/internals.pyx":4037
     *             (have_numeric and (have_dt64 or have_td64))):
     *         return np.dtype(object)
     *     elif have_bool:             # <<<<<<<<<<<<<<
     *         return np.dtype(bool)
     *     elif have_int and not have_float and not have_complex:
     */
      __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_have_bool); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4037; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_10) {

     4038:         return np.dtype(bool)

        /* "pandas/internals.pyx":4038
     *         return np.dtype(object)
     *     elif have_bool:
     *         return np.dtype(bool)             # <<<<<<<<<<<<<<
     *     elif have_int and not have_float and not have_complex:
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4038; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_INCREF(((PyObject*)&PyBool_Type));
        PyTuple_SET_ITEM(__pyx_t_4, 0, ((PyObject*)&PyBool_Type));
        __Pyx_GIVEREF(((PyObject*)&PyBool_Type));
        __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4038; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_5;
        __pyx_t_5 = 0;
        goto __pyx_L0;
      }

     4039:     elif have_int and not have_float and not have_complex:

      /* "pandas/internals.pyx":4039
     *     elif have_bool:
     *         return np.dtype(bool)
     *     elif have_int and not have_float and not have_complex:             # <<<<<<<<<<<<<<
     *
     *         # if we are mixing unsigned and signed, then return
     */
      __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_have_int); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_10) {
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_float); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = (!__pyx_t_2);
        if (__pyx_t_8) {
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_complex); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4039; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = (!__pyx_t_2);
          __pyx_t_2 = __pyx_t_9;
        } else {
          __pyx_t_2 = __pyx_t_8;
        }
        __pyx_t_8 = __pyx_t_2;
      } else {
        __pyx_t_8 = __pyx_t_10;
      }
      if (__pyx_t_8) {

     4040:

     4041:         # if we are mixing unsigned and signed, then return

     4042:         # the next biggest int type (if we can)

     4043:         lcd = _lcd_dtype(counts[IntBlock])

        /* "pandas/internals.pyx":4043
     *         # if we are mixing unsigned and signed, then return
     *         # the next biggest int type (if we can)
     *         lcd = _lcd_dtype(counts[IntBlock])             # <<<<<<<<<<<<<<
     *         kinds = set([i.dtype.kind for i in counts[IntBlock]])
     *         if len(kinds) == 1:
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_IntBlock); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4043; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = PyObject_GetItem(__pyx_v_counts, __pyx_t_5); if (unlikely(__pyx_t_4 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4043; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = __pyx_pf_6pandas_9internals_18_interleaved_dtype__lcd_dtype(__pyx_v__lcd_dtype, __pyx_t_4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4043; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_lcd = __pyx_t_5;
        __pyx_t_5 = 0;

     4044:         kinds = set([i.dtype.kind for i in counts[IntBlock]])

        /* "pandas/internals.pyx":4044
     *         # the next biggest int type (if we can)
     *         lcd = _lcd_dtype(counts[IntBlock])
     *         kinds = set([i.dtype.kind for i in counts[IntBlock]])             # <<<<<<<<<<<<<<
     *         if len(kinds) == 1:
     *             return lcd
     */
        __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_IntBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_3 = PyObject_GetItem(__pyx_v_counts, __pyx_t_4); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        if (PyList_CheckExact(__pyx_t_3) || PyTuple_CheckExact(__pyx_t_3)) {
          __pyx_t_4 = __pyx_t_3; __Pyx_INCREF(__pyx_t_4); __pyx_t_1 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_1 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
            if (__pyx_t_1 >= PyList_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_1); __Pyx_INCREF(__pyx_t_3); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
            if (__pyx_t_1 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_1); __Pyx_INCREF(__pyx_t_3); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_3 = __pyx_t_6(__pyx_t_4);
            if (unlikely(!__pyx_t_3)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_3);
          }
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_i, __pyx_n_s_dtype); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_13 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_kind); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_13);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_13))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
        }
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_4, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4044; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_v_kinds = ((PyObject*)__pyx_t_5);
        __pyx_t_5 = 0;

     4045:         if len(kinds) == 1:

        /* "pandas/internals.pyx":4045
     *         lcd = _lcd_dtype(counts[IntBlock])
     *         kinds = set([i.dtype.kind for i in counts[IntBlock]])
     *         if len(kinds) == 1:             # <<<<<<<<<<<<<<
     *             return lcd
     *
     */
        __pyx_t_1 = PySet_Size(__pyx_v_kinds); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4045; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = ((__pyx_t_1 == 1) != 0);
        if (__pyx_t_8) {

     4046:             return lcd

          /* "pandas/internals.pyx":4046
     *         kinds = set([i.dtype.kind for i in counts[IntBlock]])
     *         if len(kinds) == 1:
     *             return lcd             # <<<<<<<<<<<<<<
     *
     *         if lcd == 'uint64' or lcd == 'int64':
     */
          __Pyx_XDECREF(__pyx_r);
          __Pyx_INCREF(__pyx_v_lcd);
          __pyx_r = __pyx_v_lcd;
          goto __pyx_L0;
        }

     4047:

     4048:         if lcd == 'uint64' or lcd == 'int64':

        /* "pandas/internals.pyx":4048
     *             return lcd
     *
     *         if lcd == 'uint64' or lcd == 'int64':             # <<<<<<<<<<<<<<
     *             return np.dtype('int64')
     *
     */
        __pyx_t_8 = (__Pyx_PyString_Equals(__pyx_v_lcd, __pyx_n_s_uint64, Py_EQ)); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4048; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        if (!__pyx_t_8) {
          __pyx_t_10 = (__Pyx_PyString_Equals(__pyx_v_lcd, __pyx_n_s_int64, Py_EQ)); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4048; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_2 = __pyx_t_10;
        } else {
          __pyx_t_2 = __pyx_t_8;
        }
        if (__pyx_t_2) {

     4049:             return np.dtype('int64')

          /* "pandas/internals.pyx":4049
     *
     *         if lcd == 'uint64' or lcd == 'int64':
     *             return np.dtype('int64')             # <<<<<<<<<<<<<<
     *
     *         # return 1 bigger on the itemsize if unsinged
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_tuple__136, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4049; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_r = __pyx_t_5;
          __pyx_t_5 = 0;
          goto __pyx_L0;
        }

      /* "pandas/internals.pyx":4049
     *
     *         if lcd == 'uint64' or lcd == 'int64':
     *             return np.dtype('int64')             # <<<<<<<<<<<<<<
     *
     *         # return 1 bigger on the itemsize if unsinged
     */
      __pyx_tuple__136 = PyTuple_Pack(1, __pyx_n_s_int64); if (unlikely(!__pyx_tuple__136)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4049; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__136);
      __Pyx_GIVEREF(__pyx_tuple__136);

     4050:

     4051:         # return 1 bigger on the itemsize if unsinged

     4052:         if lcd.kind == 'u':

        /* "pandas/internals.pyx":4052
     *
     *         # return 1 bigger on the itemsize if unsinged
     *         if lcd.kind == 'u':             # <<<<<<<<<<<<<<
     *             return np.dtype('int%s' % (lcd.itemsize * 8 * 2))
     *         return lcd
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_lcd, __pyx_n_s_kind); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4052; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_2 = (__Pyx_PyString_Equals(__pyx_t_5, __pyx_n_s_u, Py_EQ)); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4052; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__pyx_t_2) {

     4053:             return np.dtype('int%s' % (lcd.itemsize * 8 * 2))

          /* "pandas/internals.pyx":4053
     *         # return 1 bigger on the itemsize if unsinged
     *         if lcd.kind == 'u':
     *             return np.dtype('int%s' % (lcd.itemsize * 8 * 2))             # <<<<<<<<<<<<<<
     *         return lcd
     *
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_lcd, __pyx_n_s_itemsize); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_4 = PyNumber_Multiply(__pyx_t_5, __pyx_int_8); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = PyNumber_Multiply(__pyx_t_4, __pyx_int_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
          __pyx_t_4 = __Pyx_PyString_Format(__pyx_kp_s_int_s, __pyx_t_5); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
          __Pyx_GIVEREF(__pyx_t_4);
          __pyx_t_4 = 0;
          __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_t_5, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4053; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_4);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_r = __pyx_t_4;
          __pyx_t_4 = 0;
          goto __pyx_L0;
        }

     4054:         return lcd

        /* "pandas/internals.pyx":4054
     *         if lcd.kind == 'u':
     *             return np.dtype('int%s' % (lcd.itemsize * 8 * 2))
     *         return lcd             # <<<<<<<<<<<<<<
     *
     *     elif have_dt64 and not have_float and not have_complex:
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_lcd);
        __pyx_r = __pyx_v_lcd;
        goto __pyx_L0;
      }

     4055:

     4056:     elif have_dt64 and not have_float and not have_complex:

      /* "pandas/internals.pyx":4056
     *         return lcd
     *
     *     elif have_dt64 and not have_float and not have_complex:             # <<<<<<<<<<<<<<
     *         return np.dtype('M8[ns]')
     *     elif have_td64 and not have_float and not have_complex:
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_dt64); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {
        __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_have_float); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_10 = (!__pyx_t_8);
        if (__pyx_t_10) {
          __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_have_complex); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4056; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = (!__pyx_t_8);
          __pyx_t_8 = __pyx_t_9;
        } else {
          __pyx_t_8 = __pyx_t_10;
        }
        __pyx_t_10 = __pyx_t_8;
      } else {
        __pyx_t_10 = __pyx_t_2;
      }
      if (__pyx_t_10) {

     4057:         return np.dtype('M8[ns]')

        /* "pandas/internals.pyx":4057
     *
     *     elif have_dt64 and not have_float and not have_complex:
     *         return np.dtype('M8[ns]')             # <<<<<<<<<<<<<<
     *     elif have_td64 and not have_float and not have_complex:
     *         return np.dtype('m8[ns]')
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_tuple__137, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4057; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

      /* "pandas/internals.pyx":4057
     *
     *     elif have_dt64 and not have_float and not have_complex:
     *         return np.dtype('M8[ns]')             # <<<<<<<<<<<<<<
     *     elif have_td64 and not have_float and not have_complex:
     *         return np.dtype('m8[ns]')
     */
      __pyx_tuple__137 = PyTuple_Pack(1, __pyx_kp_s_M8_ns); if (unlikely(!__pyx_tuple__137)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4057; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__137);
      __Pyx_GIVEREF(__pyx_tuple__137);

     4058:     elif have_td64 and not have_float and not have_complex:

      /* "pandas/internals.pyx":4058
     *     elif have_dt64 and not have_float and not have_complex:
     *         return np.dtype('M8[ns]')
     *     elif have_td64 and not have_float and not have_complex:             # <<<<<<<<<<<<<<
     *         return np.dtype('m8[ns]')
     *     elif have_complex:
     */
      __pyx_t_10 = __Pyx_PyObject_IsTrue(__pyx_v_have_td64); if (unlikely(__pyx_t_10 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4058; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_10) {
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_float); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4058; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __pyx_t_8 = (!__pyx_t_2);
        if (__pyx_t_8) {
          __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v_have_complex); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4058; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_9 = (!__pyx_t_2);
          __pyx_t_2 = __pyx_t_9;
        } else {
          __pyx_t_2 = __pyx_t_8;
        }
        __pyx_t_8 = __pyx_t_2;
      } else {
        __pyx_t_8 = __pyx_t_10;
      }
      if (__pyx_t_8) {

     4059:         return np.dtype('m8[ns]')

        /* "pandas/internals.pyx":4059
     *         return np.dtype('M8[ns]')
     *     elif have_td64 and not have_float and not have_complex:
     *         return np.dtype('m8[ns]')             # <<<<<<<<<<<<<<
     *     elif have_complex:
     *         return np.dtype('c16')
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_tuple__138, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4059; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }

      /* "pandas/internals.pyx":4059
     *         return np.dtype('M8[ns]')
     *     elif have_td64 and not have_float and not have_complex:
     *         return np.dtype('m8[ns]')             # <<<<<<<<<<<<<<
     *     elif have_complex:
     *         return np.dtype('c16')
     */
      __pyx_tuple__138 = PyTuple_Pack(1, __pyx_kp_s_m8_ns); if (unlikely(!__pyx_tuple__138)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4059; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__138);
      __Pyx_GIVEREF(__pyx_tuple__138);

     4060:     elif have_complex:

      /* "pandas/internals.pyx":4060
     *     elif have_td64 and not have_float and not have_complex:
     *         return np.dtype('m8[ns]')
     *     elif have_complex:             # <<<<<<<<<<<<<<
     *         return np.dtype('c16')
     *     else:
     */
      __pyx_t_8 = __Pyx_PyObject_IsTrue(__pyx_v_have_complex); if (unlikely(__pyx_t_8 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4060; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_8) {

     4061:         return np.dtype('c16')

        /* "pandas/internals.pyx":4061
     *         return np.dtype('m8[ns]')
     *     elif have_complex:
     *         return np.dtype('c16')             # <<<<<<<<<<<<<<
     *     else:
     *         return _lcd_dtype(counts[FloatBlock] + counts[SparseBlock])
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_5numpy_dtype)), __pyx_tuple__139, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4061; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_r = __pyx_t_4;
        __pyx_t_4 = 0;
        goto __pyx_L0;
      }
      /*else*/ {

      /* "pandas/internals.pyx":4061
     *         return np.dtype('m8[ns]')
     *     elif have_complex:
     *         return np.dtype('c16')             # <<<<<<<<<<<<<<
     *     else:
     *         return _lcd_dtype(counts[FloatBlock] + counts[SparseBlock])
     */
      __pyx_tuple__139 = PyTuple_Pack(1, __pyx_n_s_c16); if (unlikely(!__pyx_tuple__139)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4061; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__139);
      __Pyx_GIVEREF(__pyx_tuple__139);

     4062:     else:

     4063:         return _lcd_dtype(counts[FloatBlock] + counts[SparseBlock])

        /* "pandas/internals.pyx":4063
     *         return np.dtype('c16')
     *     else:
     *         return _lcd_dtype(counts[FloatBlock] + counts[SparseBlock])             # <<<<<<<<<<<<<<
     *
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_FloatBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4063; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_5 = PyObject_GetItem(__pyx_v_counts, __pyx_t_4); if (unlikely(__pyx_t_5 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4063; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = __Pyx_GetModuleGlobalName(__pyx_n_s_SparseBlock); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4063; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_13 = PyObject_GetItem(__pyx_v_counts, __pyx_t_4); if (unlikely(__pyx_t_13 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4063; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_13);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_t_4 = PyNumber_Add(__pyx_t_5, __pyx_t_13); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4063; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_13); __pyx_t_13 = 0;
        __pyx_t_13 = __pyx_pf_6pandas_9internals_18_interleaved_dtype__lcd_dtype(__pyx_v__lcd_dtype, __pyx_t_4); if (unlikely(!__pyx_t_13)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4063; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_13);
        __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
        __pyx_r = __pyx_t_13;
        __pyx_t_13 = 0;
        goto __pyx_L0;
      }

     4064:

     4065:

     4066: def _consolidate(blocks, items):

    /* "pandas/internals.pyx":4066
     *
     *
     * def _consolidate(blocks, items):             # <<<<<<<<<<<<<<
     *     """
     *     Merge blocks having same dtype, exclude non-consolidating blocks
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_25_consolidate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_24_consolidate[] = "\n    Merge blocks having same dtype, exclude non-consolidating blocks\n    ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_25_consolidate = {__Pyx_NAMESTR("_consolidate"), (PyCFunction)__pyx_pw_6pandas_9internals_25_consolidate, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_24_consolidate)};
    static PyObject *__pyx_pw_6pandas_9internals_25_consolidate(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_blocks,&__pyx_n_s_items,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_consolidate", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4066; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_consolidate") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4066; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_blocks = values[0];
        __pyx_v_items = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_consolidate", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4066; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._consolidate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_24_consolidate(__pyx_self, __pyx_v_blocks, __pyx_v_items);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":4066
     *
     *
     * def _consolidate(blocks, items):             # <<<<<<<<<<<<<<
     *     """
     *     Merge blocks having same dtype, exclude non-consolidating blocks
     */

    static PyObject *__pyx_pf_6pandas_9internals_24_consolidate(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_blocks, PyObject *__pyx_v_items) {
      PyObject *__pyx_v_gkey = NULL;
      PyObject *__pyx_v_grouper = NULL;
      PyObject *__pyx_v_new_blocks = NULL;
      PyObject *__pyx_v__can_consolidate = NULL;
      PyObject *__pyx_v_dtype = NULL;
      PyObject *__pyx_v_group_blocks = NULL;
      PyObject *__pyx_v_merged_blocks = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_consolidate", 0);

      /* "pandas/internals.pyx":4066
     *
     *
     * def _consolidate(blocks, items):             # <<<<<<<<<<<<<<
     *     """
     *     Merge blocks having same dtype, exclude non-consolidating blocks
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals._consolidate", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_gkey);
      __Pyx_XDECREF(__pyx_v_grouper);
      __Pyx_XDECREF(__pyx_v_new_blocks);
      __Pyx_XDECREF(__pyx_v__can_consolidate);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XDECREF(__pyx_v_group_blocks);
      __Pyx_XDECREF(__pyx_v_merged_blocks);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4066
     *
     *
     * def _consolidate(blocks, items):             # <<<<<<<<<<<<<<
     *     """
     *     Merge blocks having same dtype, exclude non-consolidating blocks
     */
      __pyx_tuple__766 = PyTuple_Pack(9, __pyx_n_s_blocks, __pyx_n_s_items, __pyx_n_s_gkey, __pyx_n_s_grouper, __pyx_n_s_new_blocks, __pyx_n_s_can_consolidate, __pyx_n_s_dtype, __pyx_n_s_group_blocks, __pyx_n_s_merged_blocks); if (unlikely(!__pyx_tuple__766)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4066; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__766);
      __Pyx_GIVEREF(__pyx_tuple__766);

      /* "pandas/internals.pyx":4066
     *
     *
     * def _consolidate(blocks, items):             # <<<<<<<<<<<<<<
     *     """
     *     Merge blocks having same dtype, exclude non-consolidating blocks
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_25_consolidate, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4066; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_consolidate, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4066; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__767 = (PyObject*)__Pyx_PyCode_New(2, 0, 9, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__766, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_consolidate, 4066, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__767)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4066; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4067:     """

     4068:     Merge blocks having same dtype, exclude non-consolidating blocks

     4069:     """

     4070:

     4071:     # sort by _can_consolidate, dtype

     4072:     gkey = lambda x: x._consolidate_key

    /* "pandas/internals.pyx":4072
     *
     *     # sort by _can_consolidate, dtype
     *     gkey = lambda x: x._consolidate_key             # <<<<<<<<<<<<<<
     *     grouper = itertools.groupby(sorted(blocks, key=gkey), gkey)
     *
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_12_consolidate_lambda19(PyObject *__pyx_self, PyObject *__pyx_v_x); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_12_consolidate_lambda19 = {__Pyx_NAMESTR("lambda19"), (PyCFunction)__pyx_pw_6pandas_9internals_12_consolidate_lambda19, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_12_consolidate_lambda19(PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda19 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda19(__pyx_self, ((PyObject *)__pyx_v_x));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda19(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_x) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda19", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_consolidate_key); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4072; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_AddTraceback("pandas.internals._consolidate.lambda19", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4072
     *
     *     # sort by _can_consolidate, dtype
     *     gkey = lambda x: x._consolidate_key             # <<<<<<<<<<<<<<
     *     grouper = itertools.groupby(sorted(blocks, key=gkey), gkey)
     *
     */
      __pyx_t_1 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_12_consolidate_lambda19, 0, __pyx_n_s_consolidate_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4072; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_v_gkey = __pyx_t_1;
      __pyx_t_1 = 0;

     4073:     grouper = itertools.groupby(sorted(blocks, key=gkey), gkey)

      /* "pandas/internals.pyx":4073
     *     # sort by _can_consolidate, dtype
     *     gkey = lambda x: x._consolidate_key
     *     grouper = itertools.groupby(sorted(blocks, key=gkey), gkey)             # <<<<<<<<<<<<<<
     *
     *     new_blocks = []
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_itertools); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_groupby); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_blocks);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_blocks);
      __Pyx_GIVEREF(__pyx_v_blocks);
      __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_key, __pyx_v_gkey) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_4 = PyObject_Call(__pyx_builtin_sorted, __pyx_t_1, __pyx_t_3); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_4);
      __Pyx_GIVEREF(__pyx_t_4);
      __Pyx_INCREF(__pyx_v_gkey);
      PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_gkey);
      __Pyx_GIVEREF(__pyx_v_gkey);
      __pyx_t_4 = 0;
      __pyx_t_4 = PyObject_Call(__pyx_t_2, __pyx_t_3, NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4073; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      __pyx_v_grouper = __pyx_t_4;
      __pyx_t_4 = 0;

     4074:

     4075:     new_blocks = []

      /* "pandas/internals.pyx":4075
     *     grouper = itertools.groupby(sorted(blocks, key=gkey), gkey)
     *
     *     new_blocks = []             # <<<<<<<<<<<<<<
     *     for (_can_consolidate, dtype), group_blocks in grouper:
     *         merged_blocks = _merge_blocks(list(group_blocks), items, dtype=dtype,
     */
      __pyx_t_4 = PyList_New(0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4075; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_4);
      __pyx_v_new_blocks = ((PyObject*)__pyx_t_4);
      __pyx_t_4 = 0;

     4076:     for (_can_consolidate, dtype), group_blocks in grouper:

      /* "pandas/internals.pyx":4076
     *
     *     new_blocks = []
     *     for (_can_consolidate, dtype), group_blocks in grouper:             # <<<<<<<<<<<<<<
     *         merged_blocks = _merge_blocks(list(group_blocks), items, dtype=dtype,
     *                                       _can_consolidate=_can_consolidate)
     */
      if (PyList_CheckExact(__pyx_v_grouper) || PyTuple_CheckExact(__pyx_v_grouper)) {
        __pyx_t_4 = __pyx_v_grouper; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_grouper); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_3); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_3 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_3)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_3);
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_3))) || (PyList_CheckExact(__pyx_t_3))) {
          PyObject* sequence = __pyx_t_3;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_2 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_1 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_2 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_1 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_2);
          __Pyx_INCREF(__pyx_t_1);
          #else
          __pyx_t_2 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_1 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_1);
          #endif
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_7 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_7)->tp_iternext;
          index = 0; __pyx_t_2 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_2)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_2);
          index = 1; __pyx_t_1 = __pyx_t_8(__pyx_t_7); if (unlikely(!__pyx_t_1)) goto __pyx_L5_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_1);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_7), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L6_unpacking_done;
          __pyx_L5_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L6_unpacking_done:;
        }
        if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) {
          PyObject* sequence = __pyx_t_2;
          #if CYTHON_COMPILING_IN_CPYTHON
          Py_ssize_t size = Py_SIZE(sequence);
          #else
          Py_ssize_t size = PySequence_Size(sequence);
          #endif
          if (unlikely(size != 2)) {
            if (size > 2) __Pyx_RaiseTooManyValuesError(2);
            else if (size >= 0) __Pyx_RaiseNeedMoreValuesError(size);
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }
          #if CYTHON_COMPILING_IN_CPYTHON
          if (likely(PyTuple_CheckExact(sequence))) {
            __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0);
            __pyx_t_9 = PyTuple_GET_ITEM(sequence, 1);
          } else {
            __pyx_t_7 = PyList_GET_ITEM(sequence, 0);
            __pyx_t_9 = PyList_GET_ITEM(sequence, 1);
          }
          __Pyx_INCREF(__pyx_t_7);
          __Pyx_INCREF(__pyx_t_9);
          #else
          __pyx_t_7 = PySequence_ITEM(sequence, 0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __pyx_t_9 = PySequence_ITEM(sequence, 1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          #endif
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        } else {
          Py_ssize_t index = -1;
          __pyx_t_10 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
          __pyx_t_8 = Py_TYPE(__pyx_t_10)->tp_iternext;
          index = 0; __pyx_t_7 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_7)) goto __pyx_L7_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_7);
          index = 1; __pyx_t_9 = __pyx_t_8(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L7_unpacking_failed;
          __Pyx_GOTREF(__pyx_t_9);
          if (__Pyx_IternextUnpackEndCheck(__pyx_t_8(__pyx_t_10), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_t_8 = NULL;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          goto __pyx_L8_unpacking_done;
          __pyx_L7_unpacking_failed:;
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
          __pyx_t_8 = NULL;
          if (__Pyx_IterFinish() == 0) __Pyx_RaiseNeedMoreValuesError(index);
          {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4076; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __pyx_L8_unpacking_done:;
        }
        __Pyx_XDECREF_SET(__pyx_v__can_consolidate, __pyx_t_7);
        __pyx_t_7 = 0;
        __Pyx_XDECREF_SET(__pyx_v_dtype, __pyx_t_9);
        __pyx_t_9 = 0;
        __Pyx_XDECREF_SET(__pyx_v_group_blocks, __pyx_t_1);
        __pyx_t_1 = 0;

     4077:         merged_blocks = _merge_blocks(list(group_blocks), items, dtype=dtype,

        /* "pandas/internals.pyx":4077
     *     new_blocks = []
     *     for (_can_consolidate, dtype), group_blocks in grouper:
     *         merged_blocks = _merge_blocks(list(group_blocks), items, dtype=dtype,             # <<<<<<<<<<<<<<
     *                                       _can_consolidate=_can_consolidate)
     *         if isinstance(merged_blocks, list):
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_merge_blocks); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_INCREF(__pyx_v_group_blocks);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_group_blocks);
        __Pyx_GIVEREF(__pyx_v_group_blocks);
        __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), __pyx_t_1, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_2 = 0;
        __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_dtype, __pyx_v_dtype) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

        /* "pandas/internals.pyx":4077
     *     new_blocks = []
     *     for (_can_consolidate, dtype), group_blocks in grouper:
     *         merged_blocks = _merge_blocks(list(group_blocks), items, dtype=dtype,             # <<<<<<<<<<<<<<
     *                                       _can_consolidate=_can_consolidate)
     *         if isinstance(merged_blocks, list):
     */
        __pyx_t_9 = PyObject_Call(__pyx_t_3, __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_9);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_XDECREF_SET(__pyx_v_merged_blocks, __pyx_t_9);
        __pyx_t_9 = 0;

     4078:                                       _can_consolidate=_can_consolidate)

        /* "pandas/internals.pyx":4078
     *     for (_can_consolidate, dtype), group_blocks in grouper:
     *         merged_blocks = _merge_blocks(list(group_blocks), items, dtype=dtype,
     *                                       _can_consolidate=_can_consolidate)             # <<<<<<<<<<<<<<
     *         if isinstance(merged_blocks, list):
     *             new_blocks.extend(merged_blocks)
     */
        if (PyDict_SetItem(__pyx_t_2, __pyx_n_s_can_consolidate, __pyx_v__can_consolidate) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4077; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4079:         if isinstance(merged_blocks, list):

        /* "pandas/internals.pyx":4079
     *         merged_blocks = _merge_blocks(list(group_blocks), items, dtype=dtype,
     *                                       _can_consolidate=_can_consolidate)
     *         if isinstance(merged_blocks, list):             # <<<<<<<<<<<<<<
     *             new_blocks.extend(merged_blocks)
     *         else:
     */
        __pyx_t_11 = PyList_Check(__pyx_v_merged_blocks);
        __pyx_t_12 = (__pyx_t_11 != 0);
        if (__pyx_t_12) {

     4080:             new_blocks.extend(merged_blocks)

          /* "pandas/internals.pyx":4080
     *                                       _can_consolidate=_can_consolidate)
     *         if isinstance(merged_blocks, list):
     *             new_blocks.extend(merged_blocks)             # <<<<<<<<<<<<<<
     *         else:
     *             new_blocks.append(merged_blocks)
     */
          __pyx_t_13 = __Pyx_PyList_Extend(__pyx_v_new_blocks, __pyx_v_merged_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4080; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          goto __pyx_L9;
        }
        /*else*/ {

     4081:         else:

     4082:             new_blocks.append(merged_blocks)

          /* "pandas/internals.pyx":4082
     *             new_blocks.extend(merged_blocks)
     *         else:
     *             new_blocks.append(merged_blocks)             # <<<<<<<<<<<<<<
     *
     *     return new_blocks
     */
          __pyx_t_13 = __Pyx_PyList_Append(__pyx_v_new_blocks, __pyx_v_merged_blocks); if (unlikely(__pyx_t_13 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4082; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        }
        __pyx_L9:;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;

     4083:

     4084:     return new_blocks

      /* "pandas/internals.pyx":4084
     *             new_blocks.append(merged_blocks)
     *
     *     return new_blocks             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_new_blocks);
      __pyx_r = __pyx_v_new_blocks;
      goto __pyx_L0;

     4085:

     4086:

     4087: def _valid_blocks(newb):

    /* "pandas/internals.pyx":4087
     *
     *
     * def _valid_blocks(newb):             # <<<<<<<<<<<<<<
     *     if newb is None:
     *         return []
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_27_valid_blocks(PyObject *__pyx_self, PyObject *__pyx_v_newb); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_27_valid_blocks = {__Pyx_NAMESTR("_valid_blocks"), (PyCFunction)__pyx_pw_6pandas_9internals_27_valid_blocks, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_27_valid_blocks(PyObject *__pyx_self, PyObject *__pyx_v_newb) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_valid_blocks (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_26_valid_blocks(__pyx_self, ((PyObject *)__pyx_v_newb));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_26_valid_blocks(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_newb) {
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_valid_blocks", 0);
      __Pyx_INCREF(__pyx_v_newb);

      /* "pandas/internals.pyx":4087
     *
     *
     * def _valid_blocks(newb):             # <<<<<<<<<<<<<<
     *     if newb is None:
     *         return []
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_4);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals._valid_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_newb);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4087
     *
     *
     * def _valid_blocks(newb):             # <<<<<<<<<<<<<<
     *     if newb is None:
     *         return []
     */
      __pyx_tuple__768 = PyTuple_Pack(2, __pyx_n_s_newb, __pyx_n_s_b); if (unlikely(!__pyx_tuple__768)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__768);
      __Pyx_GIVEREF(__pyx_tuple__768);

      /* "pandas/internals.pyx":4087
     *
     *
     * def _valid_blocks(newb):             # <<<<<<<<<<<<<<
     *     if newb is None:
     *         return []
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_27_valid_blocks, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_valid_blocks, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__769 = (PyObject*)__Pyx_PyCode_New(1, 0, 2, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__768, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_valid_blocks, 4087, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__769)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4087; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4088:     if newb is None:

      /* "pandas/internals.pyx":4088
     *
     * def _valid_blocks(newb):
     *     if newb is None:             # <<<<<<<<<<<<<<
     *         return []
     *     if not isinstance(newb, list):
     */
      __pyx_t_1 = (__pyx_v_newb == Py_None);
      __pyx_t_2 = (__pyx_t_1 != 0);
      if (__pyx_t_2) {

     4089:         return []

        /* "pandas/internals.pyx":4089
     * def _valid_blocks(newb):
     *     if newb is None:
     *         return []             # <<<<<<<<<<<<<<
     *     if not isinstance(newb, list):
     *         newb = [ newb ]
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4089; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_r = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L0;
      }

     4090:     if not isinstance(newb, list):

      /* "pandas/internals.pyx":4090
     *     if newb is None:
     *         return []
     *     if not isinstance(newb, list):             # <<<<<<<<<<<<<<
     *         newb = [ newb ]
     *     return [ b for b in newb if len(b.items) > 0 ]
     */
      __pyx_t_2 = PyList_Check(__pyx_v_newb);
      __pyx_t_1 = ((!(__pyx_t_2 != 0)) != 0);
      if (__pyx_t_1) {

     4091:         newb = [ newb ]

        /* "pandas/internals.pyx":4091
     *         return []
     *     if not isinstance(newb, list):
     *         newb = [ newb ]             # <<<<<<<<<<<<<<
     *     return [ b for b in newb if len(b.items) > 0 ]
     *
     */
        __pyx_t_3 = PyList_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4091; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_newb);
        PyList_SET_ITEM(__pyx_t_3, 0, __pyx_v_newb);
        __Pyx_GIVEREF(__pyx_v_newb);
        __Pyx_DECREF_SET(__pyx_v_newb, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L4;
      }
      __pyx_L4:;

     4092:     return [ b for b in newb if len(b.items) > 0 ]

      /* "pandas/internals.pyx":4092
     *     if not isinstance(newb, list):
     *         newb = [ newb ]
     *     return [ b for b in newb if len(b.items) > 0 ]             # <<<<<<<<<<<<<<
     *
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):
     */
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      if (PyList_CheckExact(__pyx_v_newb) || PyTuple_CheckExact(__pyx_v_newb)) {
        __pyx_t_4 = __pyx_v_newb; __Pyx_INCREF(__pyx_t_4); __pyx_t_5 = 0;
        __pyx_t_6 = NULL;
      } else {
        __pyx_t_5 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_newb); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_4);
        __pyx_t_6 = Py_TYPE(__pyx_t_4)->tp_iternext;
      }
      for (;;) {
        if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_7 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_4)) {
          if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_7 = PySequence_ITEM(__pyx_t_4, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
        } else {
          __pyx_t_7 = __pyx_t_6(__pyx_t_4);
          if (unlikely(!__pyx_t_7)) {
            PyObject* exc_type = PyErr_Occurred();
            if (exc_type) {
              if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
              else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            }
            break;
          }
          __Pyx_GOTREF(__pyx_t_7);
        }
        __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_7);
        __pyx_t_7 = 0;
        __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_items); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_8 = PyObject_Length(__pyx_t_7); if (unlikely(__pyx_t_8 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __pyx_t_1 = ((__pyx_t_8 > 0) != 0);
        if (__pyx_t_1) {
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_v_b))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4092; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          goto __pyx_L7;
        }
        __pyx_L7:;
      }
      __Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
      __pyx_r = __pyx_t_3;
      __pyx_t_3 = 0;
      goto __pyx_L0;

     4093:

     4094: def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):

    /* "pandas/internals.pyx":4094
     *     return [ b for b in newb if len(b.items) > 0 ]
     *
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):             # <<<<<<<<<<<<<<
     *     if len(blocks) == 1:
     *         return blocks[0]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_29_merge_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_29_merge_blocks = {__Pyx_NAMESTR("_merge_blocks"), (PyCFunction)__pyx_pw_6pandas_9internals_29_merge_blocks, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_29_merge_blocks(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_blocks = 0;
      PyObject *__pyx_v_items = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_v__can_consolidate = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_merge_blocks (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_blocks,&__pyx_n_s_items,&__pyx_n_s_dtype,&__pyx_n_s_can_consolidate,0};
        PyObject* values[4] = {0,0,0,0};
        values[2] = ((PyObject *)Py_None);
        values[3] = ((PyObject *)Py_True);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_blocks)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_items)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_merge_blocks", 0, 2, 4, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4094; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype);
              if (value) { values[2] = value; kw_args--; }
            }
            case  3:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_can_consolidate);
              if (value) { values[3] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_merge_blocks") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4094; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3);
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_blocks = values[0];
        __pyx_v_items = values[1];
        __pyx_v_dtype = values[2];
        __pyx_v__can_consolidate = values[3];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_merge_blocks", 0, 2, 4, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4094; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._merge_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_28_merge_blocks(__pyx_self, __pyx_v_blocks, __pyx_v_items, __pyx_v_dtype, __pyx_v__can_consolidate);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    /* "pandas/internals.pyx":4094
     *     return [ b for b in newb if len(b.items) > 0 ]
     *
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):             # <<<<<<<<<<<<<<
     *     if len(blocks) == 1:
     *         return blocks[0]
     */

    static PyObject *__pyx_pf_6pandas_9internals_28_merge_blocks(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_blocks, PyObject *__pyx_v_items, PyObject *__pyx_v_dtype, PyObject *__pyx_v__can_consolidate) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_new_items = NULL;
      PyObject *__pyx_v_new_block = NULL;
      PyObject *__pyx_v_new_ref_locs = NULL;
      PyObject *__pyx_v_b = NULL;
      PyObject *__pyx_v_x = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_merge_blocks", 0);
      __Pyx_INCREF(__pyx_v_blocks);
      __Pyx_INCREF(__pyx_v_dtype);

      /* "pandas/internals.pyx":4094
     *     return [ b for b in newb if len(b.items) > 0 ]
     *
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):             # <<<<<<<<<<<<<<
     *     if len(blocks) == 1:
     *         return blocks[0]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_XDECREF(__pyx_t_8);
      __Pyx_AddTraceback("pandas.internals._merge_blocks", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_new_items);
      __Pyx_XDECREF(__pyx_v_new_block);
      __Pyx_XDECREF(__pyx_v_new_ref_locs);
      __Pyx_XDECREF(__pyx_v_b);
      __Pyx_XDECREF(__pyx_v_x);
      __Pyx_XDECREF(__pyx_v_blocks);
      __Pyx_XDECREF(__pyx_v_dtype);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4094
     *     return [ b for b in newb if len(b.items) > 0 ]
     *
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):             # <<<<<<<<<<<<<<
     *     if len(blocks) == 1:
     *         return blocks[0]
     */
      __pyx_tuple__770 = PyTuple_Pack(10, __pyx_n_s_blocks, __pyx_n_s_items, __pyx_n_s_dtype, __pyx_n_s_can_consolidate, __pyx_n_s_new_values, __pyx_n_s_new_items, __pyx_n_s_new_block, __pyx_n_s_new_ref_locs, __pyx_n_s_b, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__770)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__770);
      __Pyx_GIVEREF(__pyx_tuple__770);

      /* "pandas/internals.pyx":4094
     *     return [ b for b in newb if len(b.items) > 0 ]
     *
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):             # <<<<<<<<<<<<<<
     *     if len(blocks) == 1:
     *         return blocks[0]
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_29_merge_blocks, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_merge_blocks, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__771 = (PyObject*)__Pyx_PyCode_New(4, 0, 10, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__770, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_merge_blocks, 4094, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__771)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4094; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4095:     if len(blocks) == 1:

      /* "pandas/internals.pyx":4095
     *
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):
     *     if len(blocks) == 1:             # <<<<<<<<<<<<<<
     *         return blocks[0]
     *
     */
      __pyx_t_1 = PyObject_Length(__pyx_v_blocks); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4095; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __pyx_t_2 = ((__pyx_t_1 == 1) != 0);
      if (__pyx_t_2) {

     4096:         return blocks[0]

        /* "pandas/internals.pyx":4096
     * def _merge_blocks(blocks, items, dtype=None, _can_consolidate=True):
     *     if len(blocks) == 1:
     *         return blocks[0]             # <<<<<<<<<<<<<<
     *
     *     if _can_consolidate:
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_blocks, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4096; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_r = __pyx_t_3;
        __pyx_t_3 = 0;
        goto __pyx_L0;
      }

     4097:

     4098:     if _can_consolidate:

      /* "pandas/internals.pyx":4098
     *         return blocks[0]
     *
     *     if _can_consolidate:             # <<<<<<<<<<<<<<
     *
     *         if dtype is None:
     */
      __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_v__can_consolidate); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4098; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      if (__pyx_t_2) {

     4099:

     4100:         if dtype is None:

        /* "pandas/internals.pyx":4100
     *     if _can_consolidate:
     *
     *         if dtype is None:             # <<<<<<<<<<<<<<
     *             if len(set([b.dtype for b in blocks])) != 1:
     *                 raise AssertionError("_merge_blocks are invalid!")
     */
        __pyx_t_2 = (__pyx_v_dtype == Py_None);
        __pyx_t_4 = (__pyx_t_2 != 0);
        if (__pyx_t_4) {

     4101:             if len(set([b.dtype for b in blocks])) != 1:

          /* "pandas/internals.pyx":4101
     *
     *         if dtype is None:
     *             if len(set([b.dtype for b in blocks])) != 1:             # <<<<<<<<<<<<<<
     *                 raise AssertionError("_merge_blocks are invalid!")
     *             dtype = blocks[0].dtype
     */
          __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
            __pyx_t_5 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_5); __pyx_t_1 = 0;
            __pyx_t_6 = NULL;
          } else {
            __pyx_t_1 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_5);
            __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
          }
          for (;;) {
            if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_5)) {
              if (__pyx_t_1 >= PyList_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_7 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_1); __Pyx_INCREF(__pyx_t_7); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_7 = PySequence_ITEM(__pyx_t_5, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_5)) {
              if (__pyx_t_1 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
              #if CYTHON_COMPILING_IN_CPYTHON
              __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_1); __Pyx_INCREF(__pyx_t_7); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #else
              __pyx_t_7 = PySequence_ITEM(__pyx_t_5, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              #endif
            } else {
              __pyx_t_7 = __pyx_t_6(__pyx_t_5);
              if (unlikely(!__pyx_t_7)) {
                PyObject* exc_type = PyErr_Occurred();
                if (exc_type) {
                  if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                  else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
                }
                break;
              }
              __Pyx_GOTREF(__pyx_t_7);
            }
            __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_7);
            __pyx_t_7 = 0;
            __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_dtype); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_7);
            if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_7))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          }
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
          __Pyx_GIVEREF(__pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = PyObject_Call(((PyObject *)((PyObject*)(&PySet_Type))), __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __pyx_t_1 = PySet_Size(__pyx_t_3); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __pyx_t_4 = ((__pyx_t_1 != 1) != 0);
          if (__pyx_t_4) {

     4102:                 raise AssertionError("_merge_blocks are invalid!")

            /* "pandas/internals.pyx":4102
     *         if dtype is None:
     *             if len(set([b.dtype for b in blocks])) != 1:
     *                 raise AssertionError("_merge_blocks are invalid!")             # <<<<<<<<<<<<<<
     *             dtype = blocks[0].dtype
     *
     */
            __pyx_t_3 = PyObject_Call(__pyx_builtin_AssertionError, __pyx_tuple__140, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            __Pyx_GOTREF(__pyx_t_3);
            __Pyx_Raise(__pyx_t_3, 0, 0, 0);
            __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
            {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          }

      /* "pandas/internals.pyx":4102
     *         if dtype is None:
     *             if len(set([b.dtype for b in blocks])) != 1:
     *                 raise AssertionError("_merge_blocks are invalid!")             # <<<<<<<<<<<<<<
     *             dtype = blocks[0].dtype
     *
     */
      __pyx_tuple__140 = PyTuple_Pack(1, __pyx_kp_s_merge_blocks_are_invalid); if (unlikely(!__pyx_tuple__140)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__140);
      __Pyx_GIVEREF(__pyx_tuple__140);

     4103:             dtype = blocks[0].dtype

          /* "pandas/internals.pyx":4103
     *             if len(set([b.dtype for b in blocks])) != 1:
     *                 raise AssertionError("_merge_blocks are invalid!")
     *             dtype = blocks[0].dtype             # <<<<<<<<<<<<<<
     *
     *         if not items.is_unique:
     */
          __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_blocks, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4103; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_dtype); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_dtype, __pyx_t_5);
          __pyx_t_5 = 0;
          goto __pyx_L5;
        }
        __pyx_L5:;

     4104:

     4105:         if not items.is_unique:

        /* "pandas/internals.pyx":4105
     *             dtype = blocks[0].dtype
     *
     *         if not items.is_unique:             # <<<<<<<<<<<<<<
     *             blocks = sorted(blocks, key=lambda b: b.ref_locs.tolist())
     *
     */
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_2 = ((!__pyx_t_4) != 0);
        if (__pyx_t_2) {

     4106:             blocks = sorted(blocks, key=lambda b: b.ref_locs.tolist())

    /* "pandas/internals.pyx":4106
     *
     *         if not items.is_unique:
     *             blocks = sorted(blocks, key=lambda b: b.ref_locs.tolist())             # <<<<<<<<<<<<<<
     *
     *         new_values = _vstack([b.values for b in blocks], dtype)
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_13_merge_blocks_lambda20(PyObject *__pyx_self, PyObject *__pyx_v_b); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_13_merge_blocks_lambda20 = {__Pyx_NAMESTR("lambda20"), (PyCFunction)__pyx_pw_6pandas_9internals_13_merge_blocks_lambda20, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_13_merge_blocks_lambda20(PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda20 (wrapper)", 0);
      __pyx_r = __pyx_lambda_funcdef_lambda20(__pyx_self, ((PyObject *)__pyx_v_b));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_lambda_funcdef_lambda20(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_b) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("lambda20", 0);
      __Pyx_XDECREF(__pyx_r);
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ref_locs_2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_tolist); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __pyx_r = __pyx_t_1;
      __pyx_t_1 = 0;
      goto __pyx_L0;

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_AddTraceback("pandas.internals._merge_blocks.lambda20", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

          /* "pandas/internals.pyx":4106
     *
     *         if not items.is_unique:
     *             blocks = sorted(blocks, key=lambda b: b.ref_locs.tolist())             # <<<<<<<<<<<<<<
     *
     *         new_values = _vstack([b.values for b in blocks], dtype)
     */
          __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_INCREF(__pyx_v_blocks);
          PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_blocks);
          __Pyx_GIVEREF(__pyx_v_blocks);
          __pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_7 = __Pyx_CyFunction_NewEx(&__pyx_mdef_6pandas_9internals_13_merge_blocks_lambda20, 0, __pyx_n_s_merge_blocks_locals_lambda, NULL, __pyx_n_s_pandas_internals, PyModule_GetDict(__pyx_m), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          if (PyDict_SetItem(__pyx_t_3, __pyx_n_s_key, __pyx_t_7) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          __pyx_t_7 = PyObject_Call(__pyx_builtin_sorted, __pyx_t_5, __pyx_t_3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF_SET(__pyx_v_blocks, __pyx_t_7);
          __pyx_t_7 = 0;
          goto __pyx_L9;
        }
        __pyx_L9:;

     4107:

     4108:         new_values = _vstack([b.values for b in blocks], dtype)

        /* "pandas/internals.pyx":4108
     *             blocks = sorted(blocks, key=lambda b: b.ref_locs.tolist())
     *
     *         new_values = _vstack([b.values for b in blocks], dtype)             # <<<<<<<<<<<<<<
     *         new_items = blocks[0].items.append([b.items for b in blocks[1:]])
     *         new_block = make_block(new_values, new_items, items)
     */
        __pyx_t_7 = __Pyx_GetModuleGlobalName(__pyx_n_s_vstack); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
          __pyx_t_5 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_5); __pyx_t_1 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_1 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_6 = Py_TYPE(__pyx_t_5)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_5)) {
            if (__pyx_t_1 >= PyList_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_1); __Pyx_INCREF(__pyx_t_8); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_5)) {
            if (__pyx_t_1 >= PyTuple_GET_SIZE(__pyx_t_5)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_8 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_1); __Pyx_INCREF(__pyx_t_8); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_8 = PySequence_ITEM(__pyx_t_5, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_8 = __pyx_t_6(__pyx_t_5);
            if (unlikely(!__pyx_t_8)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_8);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_8);
          __pyx_t_8 = 0;
          __pyx_t_8 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_values); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_t_8))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        }
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_3);
        __Pyx_GIVEREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_v_dtype);
        PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_dtype);
        __Pyx_GIVEREF(__pyx_v_dtype);
        __pyx_t_3 = 0;
        __pyx_t_3 = PyObject_Call(__pyx_t_7, __pyx_t_5, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_v_new_values = __pyx_t_3;
        __pyx_t_3 = 0;

     4109:         new_items = blocks[0].items.append([b.items for b in blocks[1:]])

        /* "pandas/internals.pyx":4109
     *
     *         new_values = _vstack([b.values for b in blocks], dtype)
     *         new_items = blocks[0].items.append([b.items for b in blocks[1:]])             # <<<<<<<<<<<<<<
     *         new_block = make_block(new_values, new_items, items)
     *
     */
        __pyx_t_3 = __Pyx_GetItemInt(__pyx_v_blocks, 0, long, 1, __Pyx_PyInt_From_long, 0, 0, 1); if (unlikely(__pyx_t_3 == NULL)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_t_3, __pyx_n_s_items); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_5, __pyx_n_s_append); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_7 = __Pyx_PyObject_GetSlice(__pyx_v_blocks, 1, 0, NULL, NULL, &__pyx_slice__141, 1, 0, 1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        if (PyList_CheckExact(__pyx_t_7) || PyTuple_CheckExact(__pyx_t_7)) {
          __pyx_t_8 = __pyx_t_7; __Pyx_INCREF(__pyx_t_8); __pyx_t_1 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_1 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_7); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_6 = Py_TYPE(__pyx_t_8)->tp_iternext;
        }
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_8)) {
            if (__pyx_t_1 >= PyList_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_1); __Pyx_INCREF(__pyx_t_7); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_8, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_8)) {
            if (__pyx_t_1 >= PyTuple_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_1); __Pyx_INCREF(__pyx_t_7); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_8, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_7 = __pyx_t_6(__pyx_t_8);
            if (unlikely(!__pyx_t_7)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_7);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_7);
          __pyx_t_7 = 0;
          __pyx_t_7 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_items); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_7))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_new_items = __pyx_t_5;
        __pyx_t_5 = 0;

      /* "pandas/internals.pyx":4109
     *
     *         new_values = _vstack([b.values for b in blocks], dtype)
     *         new_items = blocks[0].items.append([b.items for b in blocks[1:]])             # <<<<<<<<<<<<<<
     *         new_block = make_block(new_values, new_items, items)
     *
     */
      __pyx_slice__141 = PySlice_New(__pyx_int_1, Py_None, Py_None); if (unlikely(!__pyx_slice__141)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_slice__141);
      __Pyx_GIVEREF(__pyx_slice__141);

     4110:         new_block = make_block(new_values, new_items, items)

        /* "pandas/internals.pyx":4110
     *         new_values = _vstack([b.values for b in blocks], dtype)
     *         new_items = blocks[0].items.append([b.items for b in blocks[1:]])
     *         new_block = make_block(new_values, new_items, items)             # <<<<<<<<<<<<<<
     *
     *         # unique, can reindex
     */
        __pyx_t_5 = __Pyx_GetModuleGlobalName(__pyx_n_s_make_block); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_8 = PyTuple_New(3); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        __Pyx_INCREF(__pyx_v_new_values);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_new_values);
        __Pyx_GIVEREF(__pyx_v_new_values);
        __Pyx_INCREF(__pyx_v_new_items);
        PyTuple_SET_ITEM(__pyx_t_8, 1, __pyx_v_new_items);
        __Pyx_GIVEREF(__pyx_v_new_items);
        __Pyx_INCREF(__pyx_v_items);
        PyTuple_SET_ITEM(__pyx_t_8, 2, __pyx_v_items);
        __Pyx_GIVEREF(__pyx_v_items);
        __pyx_t_3 = PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4110; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_new_block = __pyx_t_3;
        __pyx_t_3 = 0;

     4111:

     4112:         # unique, can reindex

     4113:         if items.is_unique:

        /* "pandas/internals.pyx":4113
     *
     *         # unique, can reindex
     *         if items.is_unique:             # <<<<<<<<<<<<<<
     *             return new_block.reindex_items_from(items)
     *
     */
        __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_items, __pyx_n_s_is_unique); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4113; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        if (__pyx_t_2) {

     4114:             return new_block.reindex_items_from(items)

          /* "pandas/internals.pyx":4114
     *         # unique, can reindex
     *         if items.is_unique:
     *             return new_block.reindex_items_from(items)             # <<<<<<<<<<<<<<
     *
     *         # merge the ref_locs
     */
          __Pyx_XDECREF(__pyx_r);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_block, __pyx_n_s_reindex_items_from); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_INCREF(__pyx_v_items);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_items);
          __Pyx_GIVEREF(__pyx_v_items);
          __pyx_t_5 = PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4114; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_r = __pyx_t_5;
          __pyx_t_5 = 0;
          goto __pyx_L0;
        }

     4115:

     4116:         # merge the ref_locs

     4117:         new_ref_locs = [b._ref_locs for b in blocks]

        /* "pandas/internals.pyx":4117
     *
     *         # merge the ref_locs
     *         new_ref_locs = [b._ref_locs for b in blocks]             # <<<<<<<<<<<<<<
     *         if all([x is not None for x in new_ref_locs]):
     *             new_block.set_ref_locs(np.concatenate(new_ref_locs))
     */
        __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        if (PyList_CheckExact(__pyx_v_blocks) || PyTuple_CheckExact(__pyx_v_blocks)) {
          __pyx_t_8 = __pyx_v_blocks; __Pyx_INCREF(__pyx_t_8); __pyx_t_1 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_1 = -1; __pyx_t_8 = PyObject_GetIter(__pyx_v_blocks); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_6 = Py_TYPE(__pyx_t_8)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_8)) {
            if (__pyx_t_1 >= PyList_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_1); __Pyx_INCREF(__pyx_t_3); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_8, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_8)) {
            if (__pyx_t_1 >= PyTuple_GET_SIZE(__pyx_t_8)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_3 = PyTuple_GET_ITEM(__pyx_t_8, __pyx_t_1); __Pyx_INCREF(__pyx_t_3); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_3 = PySequence_ITEM(__pyx_t_8, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_3 = __pyx_t_6(__pyx_t_8);
            if (unlikely(!__pyx_t_3)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_3);
          }
          __Pyx_XDECREF_SET(__pyx_v_b, __pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_v_b, __pyx_n_s_ref_locs); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_3))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_v_new_ref_locs = ((PyObject*)__pyx_t_5);
        __pyx_t_5 = 0;

     4118:         if all([x is not None for x in new_ref_locs]):

        /* "pandas/internals.pyx":4118
     *         # merge the ref_locs
     *         new_ref_locs = [b._ref_locs for b in blocks]
     *         if all([x is not None for x in new_ref_locs]):             # <<<<<<<<<<<<<<
     *             new_block.set_ref_locs(np.concatenate(new_ref_locs))
     *         return new_block
     */
        __pyx_t_5 = PyList_New(0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __pyx_t_8 = __pyx_v_new_ref_locs; __Pyx_INCREF(__pyx_t_8); __pyx_t_1 = 0;
        for (;;) {
          if (__pyx_t_1 >= PyList_GET_SIZE(__pyx_t_8)) break;
          #if CYTHON_COMPILING_IN_CPYTHON
          __pyx_t_3 = PyList_GET_ITEM(__pyx_t_8, __pyx_t_1); __Pyx_INCREF(__pyx_t_3); __pyx_t_1++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #else
          __pyx_t_3 = PySequence_ITEM(__pyx_t_8, __pyx_t_1); __pyx_t_1++; if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          #endif
          __Pyx_XDECREF_SET(__pyx_v_x, __pyx_t_3);
          __pyx_t_3 = 0;
          __pyx_t_2 = (__pyx_v_x != Py_None);
          __pyx_t_3 = __Pyx_PyBool_FromLong(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_5, (PyObject*)__pyx_t_3))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        }
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_8);
        PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_5);
        __Pyx_GIVEREF(__pyx_t_5);
        __pyx_t_5 = 0;
        __pyx_t_5 = PyObject_Call(__pyx_builtin_all, __pyx_t_8, NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
        __pyx_t_2 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        if (__pyx_t_2) {

     4119:             new_block.set_ref_locs(np.concatenate(new_ref_locs))

          /* "pandas/internals.pyx":4119
     *         new_ref_locs = [b._ref_locs for b in blocks]
     *         if all([x is not None for x in new_ref_locs]):
     *             new_block.set_ref_locs(np.concatenate(new_ref_locs))             # <<<<<<<<<<<<<<
     *         return new_block
     *
     */
          __pyx_t_5 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_block, __pyx_n_s_set_ref_locs); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_5);
          __pyx_t_8 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __pyx_t_3 = __Pyx_PyObject_GetAttrStr(__pyx_t_8, __pyx_n_s_concatenate); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_3);
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          __Pyx_INCREF(__pyx_v_new_ref_locs);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_v_new_ref_locs);
          __Pyx_GIVEREF(__pyx_v_new_ref_locs);
          __pyx_t_7 = PyObject_Call(__pyx_t_3, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __pyx_t_8 = PyTuple_New(1); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_8);
          PyTuple_SET_ITEM(__pyx_t_8, 0, __pyx_t_7);
          __Pyx_GIVEREF(__pyx_t_7);
          __pyx_t_7 = 0;
          __pyx_t_7 = PyObject_Call(__pyx_t_5, __pyx_t_8, NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4119; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
          __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
          __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
          goto __pyx_L17;
        }
        __pyx_L17:;

     4120:         return new_block

        /* "pandas/internals.pyx":4120
     *         if all([x is not None for x in new_ref_locs]):
     *             new_block.set_ref_locs(np.concatenate(new_ref_locs))
     *         return new_block             # <<<<<<<<<<<<<<
     *
     *     # no merge
     */
        __Pyx_XDECREF(__pyx_r);
        __Pyx_INCREF(__pyx_v_new_block);
        __pyx_r = __pyx_v_new_block;
        goto __pyx_L0;
      }

     4121:

     4122:     # no merge

     4123:     return blocks

      /* "pandas/internals.pyx":4123
     *
     *     # no merge
     *     return blocks             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_blocks);
      __pyx_r = __pyx_v_blocks;
      goto __pyx_L0;

     4124:

     4125:

     4126: def _block_shape(values, ndim=1, shape=None):

    /* "pandas/internals.pyx":4126
     *
     *
     * def _block_shape(values, ndim=1, shape=None):             # <<<<<<<<<<<<<<
     *     """ guarantee the shape of the values to be at least 1 d """
     *     if values.ndim <= ndim:
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_31_block_shape(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static char __pyx_doc_6pandas_9internals_30_block_shape[] = " guarantee the shape of the values to be at least 1 d ";
    static PyMethodDef __pyx_mdef_6pandas_9internals_31_block_shape = {__Pyx_NAMESTR("_block_shape"), (PyCFunction)__pyx_pw_6pandas_9internals_31_block_shape, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6pandas_9internals_30_block_shape)};
    static PyObject *__pyx_pw_6pandas_9internals_31_block_shape(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_values = 0;
      PyObject *__pyx_v_ndim = 0;
      PyObject *__pyx_v_shape = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_block_shape (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_values,&__pyx_n_s_ndim,&__pyx_n_s_shape,0};
        PyObject* values[3] = {0,0,0};
        values[1] = ((PyObject *)__pyx_int_1);
        values[2] = ((PyObject *)Py_None);
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_values)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_ndim);
              if (value) { values[1] = value; kw_args--; }
            }
            case  2:
            if (kw_args > 0) {
              PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s_shape);
              if (value) { values[2] = value; kw_args--; }
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_block_shape") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4126; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else {
          switch (PyTuple_GET_SIZE(__pyx_args)) {
            case  3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            break;
            default: goto __pyx_L5_argtuple_error;
          }
        }
        __pyx_v_values = values[0];
        __pyx_v_ndim = values[1];
        __pyx_v_shape = values[2];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_block_shape", 0, 1, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4126; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._block_shape", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_30_block_shape(__pyx_self, __pyx_v_values, __pyx_v_ndim, __pyx_v_shape);

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_30_block_shape(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_values, PyObject *__pyx_v_ndim, PyObject *__pyx_v_shape) {
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_block_shape", 0);
      __Pyx_INCREF(__pyx_v_values);
      __Pyx_INCREF(__pyx_v_shape);

      /* "pandas/internals.pyx":4126
     *
     *
     * def _block_shape(values, ndim=1, shape=None):             # <<<<<<<<<<<<<<
     *     """ guarantee the shape of the values to be at least 1 d """
     *     if values.ndim <= ndim:
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_5);
      __Pyx_AddTraceback("pandas.internals._block_shape", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_values);
      __Pyx_XDECREF(__pyx_v_shape);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4126
     *
     *
     * def _block_shape(values, ndim=1, shape=None):             # <<<<<<<<<<<<<<
     *     """ guarantee the shape of the values to be at least 1 d """
     *     if values.ndim <= ndim:
     */
      __pyx_tuple__772 = PyTuple_Pack(3, __pyx_n_s_values, __pyx_n_s_ndim, __pyx_n_s_shape); if (unlikely(!__pyx_tuple__772)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__772);
      __Pyx_GIVEREF(__pyx_tuple__772);

      /* "pandas/internals.pyx":4126
     *
     *
     * def _block_shape(values, ndim=1, shape=None):             # <<<<<<<<<<<<<<
     *     """ guarantee the shape of the values to be at least 1 d """
     *     if values.ndim <= ndim:
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_31_block_shape, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_block_shape, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__773 = (PyObject*)__Pyx_PyCode_New(3, 0, 3, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__772, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_block_shape, 4126, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__773)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4127:     """ guarantee the shape of the values to be at least 1 d """

     4128:     if values.ndim <= ndim:

      /* "pandas/internals.pyx":4128
     * def _block_shape(values, ndim=1, shape=None):
     *     """ guarantee the shape of the values to be at least 1 d """
     *     if values.ndim <= ndim:             # <<<<<<<<<<<<<<
     *         if shape is None:
     *             shape = values.shape
     */
      __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_ndim); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4128; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_RichCompare(__pyx_t_1, __pyx_v_ndim, Py_LE); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4128; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4128; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (__pyx_t_3) {

     4129:         if shape is None:

        /* "pandas/internals.pyx":4129
     *     """ guarantee the shape of the values to be at least 1 d """
     *     if values.ndim <= ndim:
     *         if shape is None:             # <<<<<<<<<<<<<<
     *             shape = values.shape
     *         values = values.reshape(tuple((1,) + shape))
     */
        __pyx_t_3 = (__pyx_v_shape == Py_None);
        __pyx_t_4 = (__pyx_t_3 != 0);
        if (__pyx_t_4) {

     4130:             shape = values.shape

          /* "pandas/internals.pyx":4130
     *     if values.ndim <= ndim:
     *         if shape is None:
     *             shape = values.shape             # <<<<<<<<<<<<<<
     *         values = values.reshape(tuple((1,) + shape))
     *     return values
     */
          __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_shape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4130; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __Pyx_DECREF_SET(__pyx_v_shape, __pyx_t_2);
          __pyx_t_2 = 0;
          goto __pyx_L4;
        }
        __pyx_L4:;

     4131:         values = values.reshape(tuple((1,) + shape))

        /* "pandas/internals.pyx":4131
     *         if shape is None:
     *             shape = values.shape
     *         values = values.reshape(tuple((1,) + shape))             # <<<<<<<<<<<<<<
     *     return values
     *
     */
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_values, __pyx_n_s_reshape); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyNumber_Add(__pyx_tuple__142, __pyx_v_shape); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyTuple_Type))), __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_5);
        PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_5, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
        __Pyx_DECREF_SET(__pyx_v_values, __pyx_t_1);
        __pyx_t_1 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

      /* "pandas/internals.pyx":4131
     *         if shape is None:
     *             shape = values.shape
     *         values = values.reshape(tuple((1,) + shape))             # <<<<<<<<<<<<<<
     *     return values
     *
     */
      __pyx_tuple__142 = PyTuple_Pack(1, __pyx_int_1); if (unlikely(!__pyx_tuple__142)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__142);
      __Pyx_GIVEREF(__pyx_tuple__142);

     4132:     return values

      /* "pandas/internals.pyx":4132
     *             shape = values.shape
     *         values = values.reshape(tuple((1,) + shape))
     *     return values             # <<<<<<<<<<<<<<
     *
     *
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_values);
      __pyx_r = __pyx_v_values;
      goto __pyx_L0;

     4133:

     4134:

     4135: def _vstack(to_stack, dtype):

    /* "pandas/internals.pyx":4135
     *
     *
     * def _vstack(to_stack, dtype):             # <<<<<<<<<<<<<<
     *
     *     # work around NumPy 1.6 bug
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_33_vstack(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_33_vstack = {__Pyx_NAMESTR("_vstack"), (PyCFunction)__pyx_pw_6pandas_9internals_33_vstack, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_33_vstack(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
      PyObject *__pyx_v_to_stack = 0;
      PyObject *__pyx_v_dtype = 0;
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_vstack (wrapper)", 0);
      {
        static PyObject **__pyx_pyargnames[] = {&__pyx_n_s_to_stack,&__pyx_n_s_dtype,0};
        PyObject* values[2] = {0,0};
        if (unlikely(__pyx_kwds)) {
          Py_ssize_t kw_args;
          const Py_ssize_t pos_args = PyTuple_GET_SIZE(__pyx_args);
          switch (pos_args) {
            case  2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
            case  1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
            case  0: break;
            default: goto __pyx_L5_argtuple_error;
          }
          kw_args = PyDict_Size(__pyx_kwds);
          switch (pos_args) {
            case  0:
            if (likely((values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_to_stack)) != 0)) kw_args--;
            else goto __pyx_L5_argtuple_error;
            case  1:
            if (likely((values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s_dtype)) != 0)) kw_args--;
            else {
              __Pyx_RaiseArgtupleInvalid("_vstack", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4135; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
            }
          }
          if (unlikely(kw_args > 0)) {
            if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, pos_args, "_vstack") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4135; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
          }
        } else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
          goto __pyx_L5_argtuple_error;
        } else {
          values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
          values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
        }
        __pyx_v_to_stack = values[0];
        __pyx_v_dtype = values[1];
      }
      goto __pyx_L4_argument_unpacking_done;
      __pyx_L5_argtuple_error:;
      __Pyx_RaiseArgtupleInvalid("_vstack", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4135; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
      __pyx_L3_error:;
      __Pyx_AddTraceback("pandas.internals._vstack", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __Pyx_RefNannyFinishContext();
      return NULL;
      __pyx_L4_argument_unpacking_done:;
      __pyx_r = __pyx_pf_6pandas_9internals_32_vstack(__pyx_self, __pyx_v_to_stack, __pyx_v_dtype);
      int __pyx_lineno = 0;
      const char *__pyx_filename = NULL;
      int __pyx_clineno = 0;

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_32_vstack(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_to_stack, PyObject *__pyx_v_dtype) {
      PyObject *__pyx_v_new_values = NULL;
      PyObject *__pyx_v_x = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_vstack", 0);

      /* "pandas/internals.pyx":4135
     *
     *
     * def _vstack(to_stack, dtype):             # <<<<<<<<<<<<<<
     *
     *     # work around NumPy 1.6 bug
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_6);
      __Pyx_XDECREF(__pyx_t_9);
      __Pyx_XDECREF(__pyx_t_10);
      __Pyx_AddTraceback("pandas.internals._vstack", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_new_values);
      __Pyx_XDECREF(__pyx_v_x);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4135
     *
     *
     * def _vstack(to_stack, dtype):             # <<<<<<<<<<<<<<
     *
     *     # work around NumPy 1.6 bug
     */
      __pyx_tuple__774 = PyTuple_Pack(4, __pyx_n_s_to_stack, __pyx_n_s_dtype, __pyx_n_s_new_values, __pyx_n_s_x_2); if (unlikely(!__pyx_tuple__774)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4135; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__774);
      __Pyx_GIVEREF(__pyx_tuple__774);

      /* "pandas/internals.pyx":4135
     *
     *
     * def _vstack(to_stack, dtype):             # <<<<<<<<<<<<<<
     *
     *     # work around NumPy 1.6 bug
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_33_vstack, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4135; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_vstack, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4135; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_codeobj__775 = (PyObject*)__Pyx_PyCode_New(2, 0, 4, 0, 0, __pyx_empty_bytes, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_tuple__774, __pyx_empty_tuple, __pyx_empty_tuple, __pyx_kp_s_mnt_home_jreback_pandas_pandas, __pyx_n_s_vstack, 4135, __pyx_empty_bytes); if (unlikely(!__pyx_codeobj__775)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4135; __pyx_clineno = __LINE__; goto __pyx_L1_error;}

     4136:

     4137:     # work around NumPy 1.6 bug

     4138:     if dtype == _NS_DTYPE or dtype == _TD_DTYPE:

      /* "pandas/internals.pyx":4138
     *
     *     # work around NumPy 1.6 bug
     *     if dtype == _NS_DTYPE or dtype == _TD_DTYPE:             # <<<<<<<<<<<<<<
     *         new_values = np.vstack([x.view('i8') for x in to_stack])
     *         return new_values.view(dtype)
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_NS_DTYPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4138; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = PyObject_RichCompare(__pyx_v_dtype, __pyx_t_1, Py_EQ); __Pyx_XGOTREF(__pyx_t_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4138; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4138; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      if (!__pyx_t_3) {
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_TD_DTYPE); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4138; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_1 = PyObject_RichCompare(__pyx_v_dtype, __pyx_t_2, Py_EQ); __Pyx_XGOTREF(__pyx_t_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4138; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4138; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_5 = __pyx_t_4;
      } else {
        __pyx_t_5 = __pyx_t_3;
      }
      if (__pyx_t_5) {

     4139:         new_values = np.vstack([x.view('i8') for x in to_stack])

        /* "pandas/internals.pyx":4139
     *     # work around NumPy 1.6 bug
     *     if dtype == _NS_DTYPE or dtype == _TD_DTYPE:
     *         new_values = np.vstack([x.view('i8') for x in to_stack])             # <<<<<<<<<<<<<<
     *         return new_values.view(dtype)
     *
     */
        __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_vstack_2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        if (PyList_CheckExact(__pyx_v_to_stack) || PyTuple_CheckExact(__pyx_v_to_stack)) {
          __pyx_t_6 = __pyx_v_to_stack; __Pyx_INCREF(__pyx_t_6); __pyx_t_7 = 0;
          __pyx_t_8 = NULL;
        } else {
          __pyx_t_7 = -1; __pyx_t_6 = PyObject_GetIter(__pyx_v_to_stack); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_6);
          __pyx_t_8 = Py_TYPE(__pyx_t_6)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_8 && PyList_CheckExact(__pyx_t_6)) {
            if (__pyx_t_7 >= PyList_GET_SIZE(__pyx_t_6)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_9 = PyList_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_9 = PySequence_ITEM(__pyx_t_6, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_8 && PyTuple_CheckExact(__pyx_t_6)) {
            if (__pyx_t_7 >= PyTuple_GET_SIZE(__pyx_t_6)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_9 = PyTuple_GET_ITEM(__pyx_t_6, __pyx_t_7); __Pyx_INCREF(__pyx_t_9); __pyx_t_7++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_9 = PySequence_ITEM(__pyx_t_6, __pyx_t_7); __pyx_t_7++; if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_9 = __pyx_t_8(__pyx_t_6);
            if (unlikely(!__pyx_t_9)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_9);
          }
          __Pyx_XDECREF_SET(__pyx_v_x, __pyx_t_9);
          __pyx_t_9 = 0;
          __pyx_t_9 = __Pyx_PyObject_GetAttrStr(__pyx_v_x, __pyx_n_s_view); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_9);
          __pyx_t_10 = PyObject_Call(__pyx_t_9, __pyx_tuple__143, NULL); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_10);
          __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
          if (unlikely(__Pyx_ListComp_Append(__pyx_t_1, (PyObject*)__pyx_t_10))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
        }
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        __pyx_t_1 = 0;
        __pyx_t_1 = PyObject_Call(__pyx_t_2, __pyx_t_6, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_v_new_values = __pyx_t_1;
        __pyx_t_1 = 0;

      /* "pandas/internals.pyx":4139
     *     # work around NumPy 1.6 bug
     *     if dtype == _NS_DTYPE or dtype == _TD_DTYPE:
     *         new_values = np.vstack([x.view('i8') for x in to_stack])             # <<<<<<<<<<<<<<
     *         return new_values.view(dtype)
     *
     */
      __pyx_tuple__143 = PyTuple_Pack(1, __pyx_n_s_i8); if (unlikely(!__pyx_tuple__143)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4139; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__143);
      __Pyx_GIVEREF(__pyx_tuple__143);

     4140:         return new_values.view(dtype)

        /* "pandas/internals.pyx":4140
     *     if dtype == _NS_DTYPE or dtype == _TD_DTYPE:
     *         new_values = np.vstack([x.view('i8') for x in to_stack])
     *         return new_values.view(dtype)             # <<<<<<<<<<<<<<
     *
     *     else:
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_new_values, __pyx_n_s_view); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4140; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_6 = PyTuple_New(1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4140; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_INCREF(__pyx_v_dtype);
        PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_dtype);
        __Pyx_GIVEREF(__pyx_v_dtype);
        __pyx_t_2 = PyObject_Call(__pyx_t_1, __pyx_t_6, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4140; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __pyx_r = __pyx_t_2;
        __pyx_t_2 = 0;
        goto __pyx_L0;
      }
      /*else*/ {

     4141:

     4142:     else:

     4143:         return np.vstack(to_stack)

        /* "pandas/internals.pyx":4143
     *
     *     else:
     *         return np.vstack(to_stack)             # <<<<<<<<<<<<<<
     *
     *
     */
        __Pyx_XDECREF(__pyx_r);
        __pyx_t_2 = __Pyx_GetModuleGlobalName(__pyx_n_s_np); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_6 = __Pyx_PyObject_GetAttrStr(__pyx_t_2, __pyx_n_s_vstack_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_6);
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_INCREF(__pyx_v_to_stack);
        PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_to_stack);
        __Pyx_GIVEREF(__pyx_v_to_stack);
        __pyx_t_1 = PyObject_Call(__pyx_t_6, __pyx_t_2, NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __pyx_r = __pyx_t_1;
        __pyx_t_1 = 0;
        goto __pyx_L0;
      }

     4144:

     4145:

     4146: def _possibly_convert_to_indexer(loc):

    /* "pandas/internals.pyx":4146
     *
     *
     * def _possibly_convert_to_indexer(loc):             # <<<<<<<<<<<<<<
     *     if com._is_bool_indexer(loc):
     *         loc = [i for i, v in enumerate(loc) if v]
     */

    /* Python wrapper */
    static PyObject *__pyx_pw_6pandas_9internals_35_possibly_convert_to_indexer(PyObject *__pyx_self, PyObject *__pyx_v_loc); /*proto*/
    static PyMethodDef __pyx_mdef_6pandas_9internals_35_possibly_convert_to_indexer = {__Pyx_NAMESTR("_possibly_convert_to_indexer"), (PyCFunction)__pyx_pw_6pandas_9internals_35_possibly_convert_to_indexer, METH_O, __Pyx_DOCSTR(0)};
    static PyObject *__pyx_pw_6pandas_9internals_35_possibly_convert_to_indexer(PyObject *__pyx_self, PyObject *__pyx_v_loc) {
      PyObject *__pyx_r = 0;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_possibly_convert_to_indexer (wrapper)", 0);
      __pyx_r = __pyx_pf_6pandas_9internals_34_possibly_convert_to_indexer(__pyx_self, ((PyObject *)__pyx_v_loc));

      /* function exit code */
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

    static PyObject *__pyx_pf_6pandas_9internals_34_possibly_convert_to_indexer(CYTHON_UNUSED PyObject *__pyx_self, PyObject *__pyx_v_loc) {
      PyObject *__pyx_v_i = NULL;
      PyObject *__pyx_v_v = NULL;
      PyObject *__pyx_r = NULL;
      __Pyx_RefNannyDeclarations
      __Pyx_RefNannySetupContext("_possibly_convert_to_indexer", 0);
      __Pyx_INCREF(__pyx_v_loc);

      /* "pandas/internals.pyx":4146
     *
     *
     * def _possibly_convert_to_indexer(loc):             # <<<<<<<<<<<<<<
     *     if com._is_bool_indexer(loc):
     *         loc = [i for i, v in enumerate(loc) if v]
     */

      /* function exit code */
      __pyx_L1_error:;
      __Pyx_XDECREF(__pyx_t_1);
      __Pyx_XDECREF(__pyx_t_2);
      __Pyx_XDECREF(__pyx_t_3);
      __Pyx_XDECREF(__pyx_t_7);
      __Pyx_AddTraceback("pandas.internals._possibly_convert_to_indexer", __pyx_clineno, __pyx_lineno, __pyx_filename);
      __pyx_r = NULL;
      __pyx_L0:;
      __Pyx_XDECREF(__pyx_v_i);
      __Pyx_XDECREF(__pyx_v_v);
      __Pyx_XDECREF(__pyx_v_loc);
      __Pyx_XGIVEREF(__pyx_r);
      __Pyx_RefNannyFinishContext();
      return __pyx_r;
    }

      /* "pandas/internals.pyx":4146
     *
     *
     * def _possibly_convert_to_indexer(loc):             # <<<<<<<<<<<<<<
     *     if com._is_bool_indexer(loc):
     *         loc = [i for i, v in enumerate(loc) if v]
     */
      __pyx_tuple__776 = PyTuple_Pack(3, __pyx_n_s_loc, __pyx_n_s_i, __pyx_n_s_v); if (unlikely(!__pyx_tuple__776)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4146; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_tuple__776);
      __Pyx_GIVEREF(__pyx_tuple__776);

      /* "pandas/internals.pyx":4146
     *
     *
     * def _possibly_convert_to_indexer(loc):             # <<<<<<<<<<<<<<
     *     if com._is_bool_indexer(loc):
     *         loc = [i for i, v in enumerate(loc) if v]
     */
      __pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6pandas_9internals_35_possibly_convert_to_indexer, NULL, __pyx_n_s_pandas_internals); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4146; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      if (PyDict_SetItem(__pyx_d, __pyx_n_s_possibly_convert_to_indexer, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4146; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;

     4147:     if com._is_bool_indexer(loc):

      /* "pandas/internals.pyx":4147
     *
     * def _possibly_convert_to_indexer(loc):
     *     if com._is_bool_indexer(loc):             # <<<<<<<<<<<<<<
     *         loc = [i for i, v in enumerate(loc) if v]
     *     elif isinstance(loc, slice):
     */
      __pyx_t_1 = __Pyx_GetModuleGlobalName(__pyx_n_s_com); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_t_1, __pyx_n_s_is_bool_indexer); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_2);
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_1);
      __Pyx_INCREF(__pyx_v_loc);
      PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_loc);
      __Pyx_GIVEREF(__pyx_v_loc);
      __pyx_t_3 = PyObject_Call(__pyx_t_2, __pyx_t_1, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_GOTREF(__pyx_t_3);
      __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
      __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
      __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
      __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
      if (__pyx_t_4) {

     4148:         loc = [i for i, v in enumerate(loc) if v]

        /* "pandas/internals.pyx":4148
     * def _possibly_convert_to_indexer(loc):
     *     if com._is_bool_indexer(loc):
     *         loc = [i for i, v in enumerate(loc) if v]             # <<<<<<<<<<<<<<
     *     elif isinstance(loc, slice):
     *         loc = lrange(loc.start, loc.stop)
     */
        __pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __Pyx_INCREF(__pyx_int_0);
        __pyx_t_1 = __pyx_int_0;
        if (PyList_CheckExact(__pyx_v_loc) || PyTuple_CheckExact(__pyx_v_loc)) {
          __pyx_t_2 = __pyx_v_loc; __Pyx_INCREF(__pyx_t_2); __pyx_t_5 = 0;
          __pyx_t_6 = NULL;
        } else {
          __pyx_t_5 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_loc); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_2);
          __pyx_t_6 = Py_TYPE(__pyx_t_2)->tp_iternext;
        }
        for (;;) {
          if (!__pyx_t_6 && PyList_CheckExact(__pyx_t_2)) {
            if (__pyx_t_5 >= PyList_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else if (!__pyx_t_6 && PyTuple_CheckExact(__pyx_t_2)) {
            if (__pyx_t_5 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
            #if CYTHON_COMPILING_IN_CPYTHON
            __pyx_t_7 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_5); __Pyx_INCREF(__pyx_t_7); __pyx_t_5++; if (unlikely(0 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #else
            __pyx_t_7 = PySequence_ITEM(__pyx_t_2, __pyx_t_5); __pyx_t_5++; if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            #endif
          } else {
            __pyx_t_7 = __pyx_t_6(__pyx_t_2);
            if (unlikely(!__pyx_t_7)) {
              PyObject* exc_type = PyErr_Occurred();
              if (exc_type) {
                if (likely(exc_type == PyExc_StopIteration || PyErr_GivenExceptionMatches(exc_type, PyExc_StopIteration))) PyErr_Clear();
                else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
              }
              break;
            }
            __Pyx_GOTREF(__pyx_t_7);
          }
          __Pyx_XDECREF_SET(__pyx_v_v, __pyx_t_7);
          __pyx_t_7 = 0;
          __Pyx_INCREF(__pyx_t_1);
          __Pyx_XDECREF_SET(__pyx_v_i, __pyx_t_1);
          __pyx_t_7 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          __Pyx_GOTREF(__pyx_t_7);
          __Pyx_DECREF(__pyx_t_1);
          __pyx_t_1 = __pyx_t_7;
          __pyx_t_7 = 0;
          __pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_v); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
          if (__pyx_t_4) {
            if (unlikely(__Pyx_ListComp_Append(__pyx_t_3, (PyObject*)__pyx_v_i))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4148; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
            goto __pyx_L6;
          }
          __pyx_L6:;
        }
        __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
        __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
        __Pyx_DECREF_SET(__pyx_v_loc, __pyx_t_3);
        __pyx_t_3 = 0;
        goto __pyx_L3;
      }

     4149:     elif isinstance(loc, slice):

      /* "pandas/internals.pyx":4149
     *     if com._is_bool_indexer(loc):
     *         loc = [i for i, v in enumerate(loc) if v]
     *     elif isinstance(loc, slice):             # <<<<<<<<<<<<<<
     *         loc = lrange(loc.start, loc.stop)
     *     return loc
     */
      __pyx_t_4 = PySlice_Check(__pyx_v_loc);
      __pyx_t_8 = (__pyx_t_4 != 0);
      if (__pyx_t_8) {

     4150:         loc = lrange(loc.start, loc.stop)

        /* "pandas/internals.pyx":4150
     *         loc = [i for i, v in enumerate(loc) if v]
     *     elif isinstance(loc, slice):
     *         loc = lrange(loc.start, loc.stop)             # <<<<<<<<<<<<<<
     *     return loc
     */
        __pyx_t_3 = __Pyx_GetModuleGlobalName(__pyx_n_s_lrange); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_3);
        __pyx_t_1 = __Pyx_PyObject_GetAttrStr(__pyx_v_loc, __pyx_n_s_start); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_1);
        __pyx_t_2 = __Pyx_PyObject_GetAttrStr(__pyx_v_loc, __pyx_n_s_stop); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __pyx_t_7 = PyTuple_New(2); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_7);
        PyTuple_SET_ITEM(__pyx_t_7, 0, __pyx_t_1);
        __Pyx_GIVEREF(__pyx_t_1);
        PyTuple_SET_ITEM(__pyx_t_7, 1, __pyx_t_2);
        __Pyx_GIVEREF(__pyx_t_2);
        __pyx_t_1 = 0;
        __pyx_t_2 = 0;
        __pyx_t_2 = PyObject_Call(__pyx_t_3, __pyx_t_7, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 4150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
        __Pyx_GOTREF(__pyx_t_2);
        __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
        __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
        __Pyx_DECREF_SET(__pyx_v_loc, __pyx_t_2);
        __pyx_t_2 = 0;
        goto __pyx_L3;
      }
      __pyx_L3:;

     4151:     return loc

      /* "pandas/internals.pyx":4151
     *     elif isinstance(loc, slice):
     *         loc = lrange(loc.start, loc.stop)
     *     return loc             # <<<<<<<<<<<<<<
     */
      __Pyx_XDECREF(__pyx_r);
      __Pyx_INCREF(__pyx_v_loc);
      __pyx_r = __pyx_v_loc;
      goto __pyx_L0;