Adapting To External Environment