try
	fileName = ARGS[1]
	if occursin(r"^\s*$", fileName)
		println("error handler from \"cokey\":\n  exception    : File\n  error caller : $fileName\n  message      : void name.")
	else
		try
			json = "{"
			
			file = readlines(fileName)
			for (index, line) in enumerate(file)
				if occursin(r"^(.*)\n*{", line)
					if occursin(r"^(.*)\n*\{(.*)\{$|^(.*)\n*\{[^\s]+$", line)
						println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $line\n  message      : syntax error.")
					else
						
						struct_name = strip(match(r"^(.*)\{\s*$", line).match, [' ', '{'])
						json *= "\n\t\"$struct_name\": {"
						
						curlyBrackets_start_pos = index
						curlyBrackets_end_pos = 0
						for (index2,line2) in enumerate(file[curlyBrackets_start_pos:end])
							if occursin(r"(.*)\}", line2)
								if occursin(r"^\}\s*", line2)
									curlyBrackets_end_pos = curlyBrackets_start_pos+index2-1
									break
								else
									println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $line2\n  message      : invalid values on close curly brackets.")
								end
							end
						end

						keys = file[curlyBrackets_start_pos+1:curlyBrackets_end_pos]
						registered_keys = []
						for (keyIndex, key) in enumerate(keys)
							if keyIndex == length(keys)
								break
							end

							key = strip(key, ['\t', ' '])
							if occursin(r"^\s*$", key)
								continue							
							end
							
							if occursin(r"^(.*)", key)
								if occursin(r"^(.*)+\:", key)
									if occursin(r"^(.*)+\:(.*)+$", key)
										keySplit = split(key, r"\s*\:\s*")
										keyName = keySplit[1]
										keyValue = keySplit[2]
			
										if keyName in registered_keys
											println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $key\n  message      : this key is repeated.")	
										elseif occursin(r"^\s*$", keyName)
											println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $key\n  message      : unfound key name.")	
										elseif occursin(r"^\s*$", keyValue)
											println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $key\n  message      : unfound key value.")
										else
											push!(registered_keys, keyName)
											json *= "\n\t\t\"$keyName\": \"$keyValue\""
										end
										
									elseif occursin(r"^(.*)\:\s*$", key)
										println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $key\n  message      : unfound key value.")
									else
										println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $key\n  message      : unfound key value.")
									end
								else
									println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $key\n  message      : unfound colon.")
								end
							end
						end
						
						if curlyBrackets_end_pos != 0
							file = deleteat!(file,curlyBrackets_start_pos:curlyBrackets_end_pos)
						else
							println("error handler from \"cokey\":\n  exception    : Syntax\n  error caller : $line\n  message      : unclosed curly brackets.")
						end
						
					end
				end

				json *= "\n\t},"
			end
			json *= "\n}"
			println(json)
		catch
			println("error handler from \"cokey\":\n  exception    : File\n  error caller : $fileName\n  message      : void name.")
		end
	end
catch
end
