# Path: oroboros/core/results.py
# class PlanetData(Data):
# 	"""One planet object and its positions."""
# 	
# 	__slots__ = ('_planet', '_longitude', '_latitude', '_distance',
# 		'_lonspeed', '_latspeed', '_distspeed')
# 	
# 	def _get_planet(self):
# 		"""Get Planet object.
# 		
# 		:rtype: Planet
# 		"""
# 		return self._planet
# 	
# 	def _set_planet(self, pl):
# 		"""Set Planet object.
# 		
# 		Accepts Planet objects, name or index.
# 		
# 		:type pl: Planet or str or int
# 		:raise ValueError: invalid planet
# 		"""
# 		if not isinstance(pl, Planet):
# 			try:
# 				pl = Planet(pl)
# 			except:
# 				raise ValueError('Invalid planet object %s.' % pl)
# 		self._planet = pl
# 	
# 	planet = property(_get_planet, _set_planet, doc='Planet object.')
# 	longitude = property(Data._get_longitude, doc='Longitude.')
# 	latitude = property(Data._get_latitude, doc='Latitude.')
# 	distance = property(Data._get_distance, doc='Distance.')
# 	lonspeed = property(Data._get_lonspeed, doc='Longitude speed.')
# 	latspeed = property(Data._get_latspeed, doc='Latitude speed')
# 	distspeed = property(Data._get_distspeed, doc='Distance speed.')
# 	
# 	def __init__(self, pl, res):
# 		"""Init planet data object.
# 		
# 		:type pl: Planet or str or int
# 		:type res: sequence or numeric
# 		"""
# 		Data.__init__(self, res)
# 		self.planet = pl
# 	
# 	def __repr__(self):
# 		return 'PlanetData(%s, (%s, %s, %s, %s, %s, %s))' % (
# 			repr(x) for x in (
# 			self._planet, self._longitude, self._latitude, self._distance,
# 			self._lonspeed, self._latspeed, self._distspeed))
# 
# class MidPointData(Data):
# 	"""Object holding mid-point data."""
# 	
# 	__slots__ = ('_data1', '_data2', '_longitude', '_latitude',
# 		'_distance', '_lonspeed', '_latspeed', '_distspeed')
# 	
# 	def _get_data1(self):
# 		"""Get planet 1 data.
# 		
# 		:rtype: PlanetData
# 		"""
# 		return self._pos
# 	
# 	def _set_data1(self, data):
# 		"""Set planet 1 data object.
# 		
# 		:type data: PlanetData
# 		:raise TypeError: invalid data
# 		"""
# 		if not isinstance(data, PlanetData):
# 			raise TypeError('Invalid planet data %s.' % data)
# 		self._data1 = data
# 	
# 	def _get_data2(self):
# 		"""Get planet 2 data.
# 		
# 		:rtype: PlanetData
# 		"""
# 		return self._data2
# 	
# 	def _set_data2(self, data):
# 		"""Set planet 2 data object.
# 		
# 		:type data: PlanetData
# 		:raise TypeError: invalid data
# 		"""
# 		if not isinstance(data, PlanetData):
# 			raise TypeError('Invalid planet data %s.' % data)
# 		self._data2 = data
# 	
# 	data1 = property(_get_data1, _set_data1,
# 		doc='Planet 1 data object.')
# 	data2 = property(_get_data2, _set_data2,
# 		doc='Planet 2 data object.')
# 	longitude = property(Data._get_longitude, doc='Longitude.')
# 	latitude = property(Data._get_latitude, doc='Latitude.')
# 	distance = property(Data._get_distance, doc='Distance.')
# 	lonspeed = property(Data._get_lonspeed, doc='Longitude speed.')
# 	latspeed = property(Data._get_latspeed, doc='Latitude speed')
# 	distspeed = property(Data._get_distspeed, doc='Distance speed.')
# 	
# 	def __init__(self, data1, data2, res):
# 		"""Init midpoint data.
# 		
# 		:type data1: PlanetData
# 		:type data2: PlanetData
# 		:type res: sequence or numeric
# 		"""
# 		Data.__init__(self, res)
# 		self.data1 = data1
# 		self.data2 = data2
# 	
# 	def __repr__(self):
# 		return 'MidPointData(%s, %s, (%s, %s, %s, %s, %s, %s))' % (
# 			repr(x) for x in (
# 			self._data1, self._data2, self._longitude, self._latitude,
# 			self._distance, self._lonspeed, self._latspeed, self._distspeed))


from oroboros.core.aspects import Aspect
from oroboros.core.results import PlanetData, MidPointData
	import doctest
	def _get_data1(self):
		"""Get planet 1 data.
		
		:rtype: PlanetData
		"""
		return self._data1
	
	def _set_data1(self, data):
		"""Set planet 1 data.
		
		:type data: PlanetData
		:raise TypeError: invalid data
		"""
		if not isinstance(data, PlanetData):
			raise TypeError('Invalid planet data %s.' % data)
		self._data1 = data
	
	def _get_data2(self):
		"""Get planet 2 data.
		
		:rtype: PlanetData
		"""
		return self._data2
	
	def _set_data2(self, data):
		"""Set planet 2 data.
		
		:type data: PlanetData
		:raise TypeError: invalid data
		"""

# Path: oroboros/core/results.py
# class PlanetData(Data):
# 	"""One planet object and its positions."""
# 	
# 	__slots__ = ('_planet', '_longitude', '_latitude', '_distance',
# 		'_lonspeed', '_latspeed', '_distspeed')
# 	
# 	def _get_planet(self):
# 		"""Get Planet object.
# 		
# 		:rtype: Planet
# 		"""
# 		return self._planet
# 	
# 	def _set_planet(self, pl):
# 		"""Set Planet object.
# 		
# 		Accepts Planet objects, name or index.
# 		
# 		:type pl: Planet or str or int
# 		:raise ValueError: invalid planet
# 		"""
# 		if not isinstance(pl, Planet):
# 			try:
# 				pl = Planet(pl)
# 			except:
# 				raise ValueError('Invalid planet object %s.' % pl)
# 		self._planet = pl
# 	
# 	planet = property(_get_planet, _set_planet, doc='Planet object.')
# 	longitude = property(Data._get_longitude, doc='Longitude.')
# 	latitude = property(Data._get_latitude, doc='Latitude.')
# 	distance = property(Data._get_distance, doc='Distance.')
# 	lonspeed = property(Data._get_lonspeed, doc='Longitude speed.')
# 	latspeed = property(Data._get_latspeed, doc='Latitude speed')
# 	distspeed = property(Data._get_distspeed, doc='Distance speed.')
# 	
# 	def __init__(self, pl, res):
# 		"""Init planet data object.
# 		
# 		:type pl: Planet or str or int
# 		:type res: sequence or numeric
# 		"""
# 		Data.__init__(self, res)
# 		self.planet = pl
# 	
# 	def __repr__(self):
# 		return 'PlanetData(%s, (%s, %s, %s, %s, %s, %s))' % (
# 			repr(x) for x in (
# 			self._planet, self._longitude, self._latitude, self._distance,
# 			self._lonspeed, self._latspeed, self._distspeed))
# 
# class MidPointData(Data):
# 	"""Object holding mid-point data."""
# 	
# 	__slots__ = ('_data1', '_data2', '_longitude', '_latitude',
# 		'_distance', '_lonspeed', '_latspeed', '_distspeed')
# 	
# 	def _get_data1(self):
# 		"""Get planet 1 data.
# 		
# 		:rtype: PlanetData
# 		"""
# 		return self._pos
# 	
# 	def _set_data1(self, data):
# 		"""Set planet 1 data object.
# 		
# 		:type data: PlanetData
# 		:raise TypeError: invalid data
# 		"""
# 		if not isinstance(data, PlanetData):
# 			raise TypeError('Invalid planet data %s.' % data)
# 		self._data1 = data
# 	
# 	def _get_data2(self):
# 		"""Get planet 2 data.
# 		
# 		:rtype: PlanetData
# 		"""
# 		return self._data2
# 	
# 	def _set_data2(self, data):
# 		"""Set planet 2 data object.
# 		
# 		:type data: PlanetData
# 		:raise TypeError: invalid data
# 		"""
# 		if not isinstance(data, PlanetData):
# 			raise TypeError('Invalid planet data %s.' % data)
# 		self._data2 = data
# 	
# 	data1 = property(_get_data1, _set_data1,
# 		doc='Planet 1 data object.')
# 	data2 = property(_get_data2, _set_data2,
# 		doc='Planet 2 data object.')
# 	longitude = property(Data._get_longitude, doc='Longitude.')
# 	latitude = property(Data._get_latitude, doc='Latitude.')
# 	distance = property(Data._get_distance, doc='Distance.')
# 	lonspeed = property(Data._get_lonspeed, doc='Longitude speed.')
# 	latspeed = property(Data._get_latspeed, doc='Latitude speed')
# 	distspeed = property(Data._get_distspeed, doc='Distance speed.')
# 	
# 	def __init__(self, data1, data2, res):
# 		"""Init midpoint data.
# 		
# 		:type data1: PlanetData
# 		:type data2: PlanetData
# 		:type res: sequence or numeric
# 		"""
# 		Data.__init__(self, res)
# 		self.data1 = data1
# 		self.data2 = data2
# 	
# 	def __repr__(self):
# 		return 'MidPointData(%s, %s, (%s, %s, %s, %s, %s, %s))' % (
# 			repr(x) for x in (
# 			self._data1, self._data2, self._longitude, self._latitude,
# 			self._distance, self._lonspeed, self._latspeed, self._distspeed))


# Path: oroboros/core/aspectsresults.py
from oroboros.core.aspects import Aspect
from oroboros.core.results import PlanetData, MidPointData
	import doctest

	def _get_data1(self):
		"""Get planet 1 data.
		
		:rtype: PlanetData
		"""
		return self._data1
	
	def _set_data1(self, data):
		"""Set planet 1 data.
		
		:type data: PlanetData
		:raise TypeError: invalid data
		"""
		if not isinstance(data, PlanetData):
			raise TypeError('Invalid planet data %s.' % data)
		self._data1 = data
	
	def _get_data2(self):
		"""Get planet 2 data.
		
		:rtype: PlanetData
		"""
		return self._data2
	
	def _set_data2(self, data):
		"""Set planet 2 data.
		
		:type data: PlanetData
		:raise TypeError: invalid data
		"""

		if not isinstance(data, PlanetData):