Hopefully reflects the logic specified for this class...