+ public:
+ Sector(const Universe &univ, Vector<int> coords)
+ : univ(univ), coords(coords) { }
+
+ public:
+ Vector<int> SectorCoords() const { return coords; }
+ Vector<int> AreaCoords() const { return univ.areaSize * coords; }
+
+ Area AreaAt(Vector<int> ac) const { return univ.AreaAt(AreaCoords() + ac); }
+
+ private:
+ const Universe &univ;
+ Vector<int> coords;
+
+ };
+
+ class Area {
+
+ public:
+ Area(const Universe &univ, Vector<int> coords)
+ : univ(univ), coords(coords) { }