// All material copyright ESRI, All Rights Reserved, unless otherwise specified.
// See http://@sbaseurl@/jsapi/jsapi/esri/copyright.txt and http://www.arcgis.com/apps/webappbuilder/copyright.txt for details.

//>>built
define("dojo/_base/declare dojo/json ./constants esri/geometry/Polygon esri/geometry/Polyline esri/geometry/Extent".split(" "),function(f,d,e,g,h,k){return f(null,{extent:null,id:null,utmZone:null,latitudeZone:null,_rings:[],constructor:function(a){var b=a.id.match(/(\d+)|([A-Za-z]+)/g);this.id=a.id;this.utmZone=1*b[0];this.latitudeZone=b[1];this.extent=new k({xmin:a.xmin,ymin:a.ymin,xmax:a.xmax,ymax:a.ymax,spatialReference:a.spatialReference||{wkid:4326}});a=[this.extent.xmin,this.extent.ymin];this._rings=
[[a,[this.extent.xmax,this.extent.ymin],[this.extent.xmax,this.extent.ymax],[this.extent.xmin,this.extent.ymax],a]]},toPolygon:function(a){var b=d.parse(d.stringify(this._rings));if(a)for(var c=0;c<b[0].length;c++)b[0][c][0]+=a*e.GEOGRAPHIC_360;return new g({rings:b,spatialReference:this.spatialReference})},toPolyline:function(a){var b=d.parse(d.stringify(this._rings));if(a)for(var c=0;c<b[0].length;c++)b[0][c][0]+=a*e.GEOGRAPHIC_360;return new h({paths:b,spatialReference:this.spatialReference})}})});