Changed public class methods to virtual