added extra method implementations