added ARGV functionality