major: functions added