id,node_id,number,title,user,state,locked,assignee,milestone,comments,created_at,updated_at,closed_at,author_association,active_lock_reason,draft,pull_request,body,reactions,performed_via_github_app,state_reason,repo,type 2110888925,I_kwDOAMm_X8590Zvd,8690,Add `nbytes` to repr?,5635139,closed,0,,,9,2024-01-31T20:13:59Z,2024-02-19T22:18:47Z,2024-02-07T20:47:38Z,MEMBER,,,,"### Is your feature request related to a problem? Would having the `nbytes` value in the `Dataset` repr be reasonable? I frequently find myself logging this separately. For example: ```diff Dimensions: (lat: 25, time: 2920, lon: 53) Coordinates: * lat (lat) float32 75.0 72.5 70.0 67.5 65.0 ... 25.0 22.5 20.0 17.5 15.0 * lon (lon) float32 200.0 202.5 205.0 207.5 ... 322.5 325.0 327.5 330.0 * time (time) datetime64[ns] 2013-01-01 ... 2014-12-31T18:00:00 Data variables: - air (time, lat, lon) float32 dask.array + air (time, lat, lon) float32 15MB dask.array Attributes: Conventions: COARDS title: 4x daily NMC reanalysis (1948) description: Data is from NMC initialized reanalysis\n(4x/day). These a... platform: Model references: http://www.esrl.noaa.gov/psd/data/gridded/data.ncep.reanaly... ``` ### Describe the solution you'd like _No response_ ### Describe alternatives you've considered Status quo :) ### Additional context _No response_","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8690/reactions"", ""total_count"": 6, ""+1"": 6, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue 1920361792,PR_kwDOAMm_X85bl988,8258,Add a `.drop_attrs` method,5635139,open,0,,,9,2023-09-30T18:42:12Z,2024-02-09T18:49:22Z,,MEMBER,,0,pydata/xarray/pulls/8258,"Part of #3891 ~Do we think this is a good idea? I'll add docs & tests if so...~ Ready to go, just needs agreement on whether it's good","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8258/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 1897096472,PR_kwDOAMm_X85aXwKH,8183,Remove `setup.cfg` in favor of `pyproject.toml`,5635139,closed,0,,,9,2023-09-14T18:29:16Z,2023-09-15T22:42:42Z,2023-09-14T20:52:39Z,MEMBER,,0,pydata/xarray/pulls/8183,"This is tested, but much of it was me tweaking from an LLM's attempt at the translation, so there may be small issues that aren't picked up in tests (but should be very easy to fix if these come up)","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/8183/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 936123457,MDExOlB1bGxSZXF1ZXN0NjgyOTI5NDA1,5569,Consolidate TypeVars in a single place,5635139,closed,0,,,9,2021-07-03T00:01:09Z,2021-08-22T00:04:54Z,2021-08-21T23:38:14Z,MEMBER,,0,pydata/xarray/pulls/5569," - [x] Passes `pre-commit run --all-files` This consolidates the TypeVars into a single place, and merges `VariableType` and `T_Variable`. I'm not 100% sure the interaction between the `.pyi` file and the new `xarray.core.types` is optimal. But it does seem to work. Feedback very welcome, as ever. There's a note to rename `T_DSorDA` — what do people think? `T_Data`? It's kinda inscrutable atm. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5569/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 860909006,MDExOlB1bGxSZXF1ZXN0NjE3NjY2NzI0,5188,Replace raises_regex with pytest.raises,5635139,closed,0,,,9,2021-04-19T05:26:23Z,2021-04-19T23:10:06Z,2021-04-19T23:10:03Z,MEMBER,,0,pydata/xarray/pulls/5188," - [x] Passes `pre-commit run --all-files` - [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst` Is there a reason we have our own `raises_regex`? This replaces it with the standard pytest check. This is another regex special, so it misses multi-line statements. I can dust off the multi-line regex manual if this ends up working. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/5188/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 681528611,MDExOlB1bGxSZXF1ZXN0NDY5OTA2MzQ3,4351,Allow cov & corr to handle missing values,5635139,closed,0,,,9,2020-08-19T04:02:21Z,2020-08-30T11:36:38Z,2020-08-24T16:39:11Z,MEMBER,,0,pydata/xarray/pulls/4351," - [x] Closes #4349 - [x] Tests added - [x] Passes `isort . && black . && mypy . && flake8` - [x] User visible changes (including notable bug fixes) are documented in `whats-new.rst` I'm not that excited about how this is tested, very open to alternatives. And the mechanics could take another set of eyes too.","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/4351/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 509486175,MDExOlB1bGxSZXF1ZXN0MzMwMDQxNjM2,3418,change ALL_DIMS to equal ellipsis,5635139,closed,0,,,9,2019-10-19T17:46:55Z,2019-10-25T17:16:33Z,2019-10-25T15:15:47Z,MEMBER,,0,pydata/xarray/pulls/3418," - [x] Closes https://github.com/pydata/xarray/issues/3414 - [x] Passes `black . && mypy . && flake8` - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API This is a more drastic version of the suggested change, making `xr.ALL_DIMS` equal the ellipsis, `...`. The only downside I can see is that printing `xr.ALL_DIMS` will print `...`. The upside is that we get compat 'for free'","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/3418/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 393710539,MDU6SXNzdWUzOTM3MTA1Mzk=,2627,Is pep8speaks working well?,5635139,closed,0,,,9,2018-12-22T23:38:14Z,2018-12-30T11:08:41Z,2018-12-30T11:08:41Z,MEMBER,,,,"I returned to do some work on xarray, and looks like there are lots of linting errors. Maybe we shouldn't worry ourselves with this; though let's make a deliberate decision Is pep8speaks working well? One example is this PR: https://github.com/pydata/xarray/pull/2553, where it looks like pep8speaks initially complained, but doesn't have a test so was potentially lost in the discussion. Any thoughts? I'm happy to help see if there are alternatives / pep8speaks can be added as a test / add a test in travis / fix these. FWIW I've used `black` successfully in pandas-gbq and internally, but I think it's maybe too much change for a large project like xarray ``` ./versioneer.py:943:-13592: W605 invalid escape sequence '\s' ./versioneer.py:943:-13408: W605 invalid escape sequence '\s' ./versioneer.py:943:-13228: W605 invalid escape sequence '\s' ./versioneer.py:943:-11196: W605 invalid escape sequence '\d' ./versioneer.py:943:-8162: W605 invalid escape sequence '\d' ./xarray/testing.py:148:1: W391 blank line at end of file ./xarray/core/options.py:66:80: E501 line too long (97 > 79 characters) ./xarray/core/combine.py:381:36: E226 missing whitespace around arithmetic operator ./xarray/core/combine.py:536:75: E211 whitespace before '(' ./xarray/core/combine.py:537:57: E126 continuation line over-indented for hanging indent ./xarray/core/dataarray.py:19:1: F401 '.options._get_keep_attrs' imported but unused ./xarray/core/dataset.py:15:1: F401 '.computation' imported but unused ./xarray/core/dataset.py:18:1: F401 '..conventions' imported but unused ./xarray/core/dataset.py:27:1: F401 '.dtypes.is_datetime_like' imported but unused ./xarray/core/dataset.py:32:1: F401 '.pycompat.integer_types' imported but unused ./xarray/core/dataset.py:520:5: E303 too many blank lines (2) ./xarray/core/dataset.py:739:80: E501 line too long (81 > 79 characters) ./xarray/core/dataset.py:750:80: E501 line too long (80 > 79 characters) ./xarray/core/dataset.py:768:80: E501 line too long (88 > 79 characters) ./xarray/core/dataset.py:779:80: E501 line too long (84 > 79 characters) ./xarray/core/dataset.py:788:80: E501 line too long (84 > 79 characters) ./xarray/core/dataset.py:795:80: E501 line too long (80 > 79 characters) ./xarray/core/dataset.py:811:80: E501 line too long (84 > 79 characters) ./xarray/core/dataset.py:828:80: E501 line too long (80 > 79 characters) ./xarray/core/dataset.py:1178:80: E501 line too long (92 > 79 characters) ./xarray/core/dataset.py:1365:13: F401 'dask' imported but unused ./xarray/core/dataset.py:1365:80: E501 line too long (92 > 79 characters) ./xarray/core/dataset.py:1624:80: E501 line too long (82 > 79 characters) ./xarray/core/dataset.py:1763:80: E501 line too long (82 > 79 characters) ./xarray/core/dataset.py:1866:80: E501 line too long (80 > 79 characters) ./xarray/core/dataset.py:1867:80: E501 line too long (80 > 79 characters) ./xarray/core/dataset.py:1977:16: E111 indentation is not a multiple of four ./xarray/core/dataset.py:1991:37: E126 continuation line over-indented for hanging indent ./xarray/core/dataset.py:2908:39: F812 list comprehension redefines 'dim' from line 2900 ./xarray/core/dataset.py:2976:80: E501 line too long (86 > 79 characters) ./xarray/core/dataset.py:2983:80: E501 line too long (82 > 79 characters) ./xarray/core/dataset.py:3027:80: E501 line too long (80 > 79 characters) ./xarray/core/dataset.py:3709:32: F812 list comprehension redefines 'dim' from line 3656 ./xarray/core/dataset.py:3749:80: E501 line too long (80 > 79 characters) ./xarray/core/dataset.py:3832:80: E501 line too long (83 > 79 characters) ./xarray/core/dataset.py:3912:80: E501 line too long (82 > 79 characters) ./xarray/core/dataset.py:3918:80: E501 line too long (84 > 79 characters) ./xarray/core/dataset.py:3929:80: E501 line too long (82 > 79 characters) ./xarray/core/dataset.py:3932:80: E501 line too long (88 > 79 characters) ./xarray/core/dataset.py:3933:80: E501 line too long (83 > 79 characters) ./xarray/core/common.py:3:1: F401 'warnings' imported but unused ./xarray/core/common.py:4:1: F401 'distutils.version.LooseVersion' imported but unused ./xarray/core/common.py:209:80: E501 line too long (90 > 79 characters) ./xarray/core/common.py:429:80: E501 line too long (82 > 79 characters) ./xarray/core/common.py:465:80: E501 line too long (86 > 79 characters) ./xarray/core/common.py:468:80: E501 line too long (84 > 79 characters) ./xarray/core/common.py:472:80: E501 line too long (81 > 79 characters) ./xarray/core/common.py:473:80: E501 line too long (87 > 79 characters) ./xarray/core/common.py:486:80: E501 line too long (82 > 79 characters) ./xarray/core/common.py:496:80: E501 line too long (80 > 79 characters) ./xarray/core/common.py:505:80: E501 line too long (80 > 79 characters) ./xarray/core/common.py:527:80: E501 line too long (84 > 79 characters) ./xarray/core/common.py:560:80: E501 line too long (80 > 79 characters) ./xarray/core/common.py:564:80: E501 line too long (81 > 79 characters) ./xarray/core/common.py:568:80: E501 line too long (85 > 79 characters) ./xarray/core/common.py:637:80: E501 line too long (81 > 79 characters) ./xarray/core/common.py:641:80: E501 line too long (85 > 79 characters) ./xarray/core/common.py:648:80: E501 line too long (86 > 79 characters) ./xarray/core/common.py:654:80: E501 line too long (86 > 79 characters) ./xarray/core/common.py:661:80: E501 line too long (89 > 79 characters) ./xarray/core/common.py:677:80: E501 line too long (80 > 79 characters) ./xarray/core/common.py:679:1: W293 blank line contains whitespace ./xarray/core/utils.py:511:13: W605 invalid escape sequence '\:' ./xarray/plot/plot.py:17:1: F401 'xarray.core.alignment.align' imported but unused ./xarray/plot/plot.py:259:5: E303 too many blank lines (2) ./xarray/backends/netcdf3.py:12:14: W605 invalid escape sequence '\(' ./xarray/backends/pynio_.py:12:1: I004 isort found an unexpected blank line in imports ./xarray/backends/api.py:18:1: I004 isort found an unexpected blank line in imports ./xarray/backends/api.py:26:9: F401 'netCDF4' imported but unused ./xarray/backends/api.py:30:13: F401 'pydap' imported but unused ./xarray/backends/api.py:41:9: F401 'Nio' imported but unused ./xarray/backends/api.py:46:9: F401 'cfgrib' imported but unused ./xarray/backends/api.py:59:9: F401 'scipy' imported but unused ./xarray/backends/api.py:68:9: F401 'netCDF4' imported but unused ./xarray/backends/api.py:72:13: F401 'scipy.io.netcdf' imported but unused ./xarray/backends/api.py:581:80: E501 line too long (80 > 79 characters) ./xarray/backends/api.py:648:80: E501 line too long (81 > 79 characters) ./xarray/backends/pseudonetcdf_.py:12:1: I004 isort found an unexpected blank line in imports ./xarray/backends/zarr.py:11:1: F401 '.common.ArrayWriter' imported but unused ./xarray/backends/zarr.py:240:80: E501 line too long (82 > 79 characters) ./xarray/backends/rasterio_.py:14:1: I004 isort found an unexpected blank line in imports ./xarray/backends/file_manager.py:6:1: I004 isort found an unexpected blank line in imports ./xarray/tests/test_combine.py:10:1: F401 'xarray.merge' imported but unused ./xarray/tests/test_combine.py:495:65: E211 whitespace before '(' ./xarray/tests/test_combine.py:523:52: E231 missing whitespace after ',' ./xarray/tests/test_combine.py:523:54: E231 missing whitespace after ',' ./xarray/tests/test_combine.py:523:61: E231 missing whitespace after ',' ./xarray/tests/test_combine.py:524:57: E241 multiple spaces after ',' ./xarray/tests/test_combine.py:525:55: E241 multiple spaces after ',' ./xarray/tests/test_combine.py:526:55: E241 multiple spaces after ',' ./xarray/tests/test_combine.py:527:57: E241 multiple spaces after ',' ./xarray/tests/test_combine.py:597:52: E203 whitespace before ',' ./xarray/tests/test_combine.py:646:80: E501 line too long (85 > 79 characters) ./xarray/tests/test_combine.py:647:80: E501 line too long (85 > 79 characters) ./xarray/tests/test_combine.py:658:80: E501 line too long (83 > 79 characters) ./xarray/tests/test_combine.py:659:80: E501 line too long (87 > 79 characters) ./xarray/tests/test_plot.py:1164:13: F841 local variable 'g' is assigned to but never used ./xarray/tests/test_utils.py:12:1: F401 'xarray.core.options.set_options' imported but unused ./xarray/tests/test_dataarray.py:13:1: F401 'xarray.set_options' imported but unused ./xarray/tests/test_backends.py:660:80: E501 line too long (82 > 79 characters) ./xarray/tests/test_backends.py:1345:9: F841 local variable 'zarr' is assigned to but never used ./xarray/tests/test_backends.py:2171:9: E303 too many blank lines (2) ./xarray/tests/test_backends.py:2197:36: E127 continuation line over-indented for visual indent ./xarray/tests/test_backends.py:2204:36: E126 continuation line over-indented for hanging indent ./xarray/tests/test_backends.py:2242:5: F811 redefinition of unused 'test_open_mfdataset' from line 2155 ./xarray/tests/test_backends.py:2965:80: E501 line too long (82 > 79 characters) ./xarray/tests/test_variable.py:30:1: I004 isort found an unexpected blank line in imports ./xarray/tests/test_distributed.py:3:1: F401 'distutils.version.LooseVersion' imported but unused ./xarray/tests/test_distributed.py:4:1: F401 'os' imported but unused ./xarray/tests/test_distributed.py:5:1: F401 'sys' imported but unused ./xarray/tests/test_distributed.py:7:1: F401 'tempfile' imported but unused ./xarray/tests/test_distributed.py:12:80: E501 line too long (81 > 79 characters) ./xarray/tests/test_distributed.py:14:1: F401 'dask.array' imported but unused ./xarray/tests/test_distributed.py:17:1: F401 'distributed.utils_test.loop' imported but unused ./xarray/tests/test_distributed.py:19:1: F401 'numpy as np' imported but unused ./xarray/tests/test_distributed.py:28:1: F401 '.raises_regex' imported but unused ./xarray/tests/test_distributed.py:66:1: F811 redefinition of unused 'loop' from line 17 ./xarray/tests/test_distributed.py:76:49: F841 local variable 'c' is assigned to but never used ./xarray/tests/test_distributed.py:96:1: F811 redefinition of unused 'loop' from line 17 ./xarray/tests/test_distributed.py:106:49: F841 local variable 'c' is assigned to but never used ./xarray/tests/test_distributed.py:121:1: E303 too many blank lines (3) ./xarray/tests/test_distributed.py:121:1: F811 redefinition of unused 'loop' from line 17 ./xarray/tests/test_distributed.py:126:9: F841 local variable 'zarr' is assigned to but never used ./xarray/tests/test_distributed.py:133:49: F841 local variable 'c' is assigned to but never used ./xarray/tests/test_distributed.py:147:1: F811 redefinition of unused 'loop' from line 17 ./xarray/tests/test_distributed.py:151:53: F841 local variable 'c' is assigned to but never used ./xarray/tests/test_distributed.py:158:1: F811 redefinition of unused 'loop' from line 17 ./xarray/tests/test_distributed.py:161:49: F841 local variable 'c' is assigned to but never used ./xarray/coding/cftime_offsets.py:422:17: W605 invalid escape sequence '\d' ./xarray/coding/cftimeindex.py:71:2: W605 invalid escape sequence '\-' ./xarray/coding/cftimeindex.py:71:2: W605 invalid escape sequence '\:' ./xarray/coding/cftimeindex.py:72:6: W605 invalid escape sequence '\d' ./xarray/coding/cftimeindex.py:72:6: W605 invalid escape sequence '\d' ./xarray/coding/cftimeindex.py:72:6: W605 invalid escape sequence '\d' ./xarray/coding/cftimeindex.py:72:6: W605 invalid escape sequence '\d' ./xarray/coding/cftimeindex.py:72:6: W605 invalid escape sequence '\d' ./xarray/coding/cftimeindex.py:72:6: W605 invalid escape sequence '\d' ```","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2627/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue 309976469,MDExOlB1bGxSZXF1ZXN0MTc4NDk0ODMw,2031,Isin,5635139,closed,0,,,9,2018-03-30T05:07:12Z,2018-04-04T03:52:21Z,2018-04-04T02:46:57Z,MEMBER,,0,pydata/xarray/pulls/2031," - [x] Tests added (for all bug fixes or enhancements) - [x] Tests passed (for all non-documentation changes) - [x] Fully documented, including `whats-new.rst` for all changes and `api.rst` for new API (remove if this change should not be visible to users, e.g., if it is an internal clean-up, or if this is part of a larger project that will be documented later) This is an initial implementation of `isin`. It works for DataArrays, but isn't yet implemented further. I've been away from these sorts features for too long: Is there a canonical place to put these? What's the canonical approach to extending to datasets? I can see a few approaches in the code. ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/2031/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 206632333,MDU6SXNzdWUyMDY2MzIzMzM=,1257,PERF: Add benchmarking?,5635139,closed,0,,,9,2017-02-09T21:17:40Z,2017-07-26T16:17:34Z,2017-07-26T16:17:34Z,MEMBER,,,,"Because xarray is all python and generally not doing much compute itself (i.e. it marshals other libraries to do that), this hasn't been that important. IIRC most of the performance issues have arisen where xarray builds on (arguably) shaky foundations, like `PeriodIndex`. Though as we mature, is it worth adding some benchmarks? If so, what's a good way to do this? Pandas uses asv successfully. I don't have experience with https://github.com/ionelmc/pytest-benchmark but that could be a lower cost way of getting started. Any others?","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1257/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,completed,13221727,issue 192702101,MDExOlB1bGxSZXF1ZXN0OTU5ODk3Mzc=,1145,Rolling count,5635139,closed,0,,,9,2016-11-30T22:44:50Z,2017-06-26T18:43:06Z,2017-06-26T18:43:06Z,MEMBER,,0,pydata/xarray/pulls/1145,"closes https://github.com/pydata/xarray/issues/1138 ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/1145/reactions"", ""total_count"": 2, ""+1"": 2, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull 156072065,MDExOlB1bGxSZXF1ZXN0NzA5MzI2Mzc=,852,BUG: Stringify DS attrs in dir,5635139,closed,0,,,9,2016-05-21T00:07:23Z,2016-08-10T01:15:31Z,2016-08-10T01:13:50Z,MEMBER,,0,pydata/xarray/pulls/852,"Previously: ``` python In [21]: ds Out[21]: Dimensions: (abc: 3) Coordinates: * abc (abc) int64 0 1 2 Data variables: 0 (abc) float64 0.3168 0.1132 0.6664 1 (abc) float64 0.9799 0.9663 0.01084 2 (abc) float64 0.9171 0.6848 0.5028 In [22]: dir(ds) --------------------------------------------------------------------------- TypeError Traceback (most recent call last) in () ----> 1 dir(ds) /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/xarray/core/common.py in __dir__(self) 157 extra_attrs = [item for sublist in self._attr_sources 158 for item in sublist] --> 159 return sorted(set(dir(type(self)) + extra_attrs)) 160 161 TypeError: unorderable types: numpy.ndarray() > str() ``` ","{""url"": ""https://api.github.com/repos/pydata/xarray/issues/852/reactions"", ""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,,13221727,pull