added argv and argc