def _get_self_bounds(self):
if not self.embed:<EOL><INDENT>raise ValueError('<STR_LIT>')<EOL><DEDENT>data = json.loads(self.data)<EOL>if '<STR_LIT>' not in data.keys():<EOL><INDENT>if not (isinstance(data, dict) and '<STR_LIT>' in data.keys()):<EOL><INDENT>data = {'<STR_LIT:type>': '<STR_LIT>', '<STR_LIT>': data}<EOL><DEDENT>data = {'<STR_LIT:type>': '<STR_LIT>', '<STR_LIT>': [data]}<EOL><DEDENT>bounds = [[None, None], [None, None]]<EOL>for feature in data['<STR_LIT>']:<EOL><INDENT>for point in iter_points(feature.get('<STR_LIT>', {}).get('<STR_LIT>', {})):  <EOL><INDENT>bounds = [<EOL>[<EOL>none_min(bounds[<NUM_LIT:0>][<NUM_LIT:0>], point[<NUM_LIT:1>]),<EOL>none_min(bounds[<NUM_LIT:0>][<NUM_LIT:1>], point[<NUM_LIT:0>]),<EOL>],<EOL>[<EOL>none_max(bounds[<NUM_LIT:1>][<NUM_LIT:0>], point[<NUM_LIT:1>]),<EOL>none_max(bounds[<NUM_LIT:1>][<NUM_LIT:1>], point[<NUM_LIT:0>]),<EOL>],<EOL>]<EOL><DEDENT><DEDENT>return bounds<EOL>
Computes the bounds of the object itself (not including it's children)
in the form [[lat_min, lon_min], [lat_max, lon_max]].