addded main method