public Flags() throws IOException
	{
		System.out.print("Do you want to override the global flags for this module?");
		if (askBoolean())
		{
			System.out.println("Give the global overriding compiler flags");
			System.out.print("Leave blank and hit return to skip this option");
			global_override_compiler_flags = askString();
			System.out.println("Give the global overriding linker flags");
			System.out.print("Leave blank and hit return to skip this option");
			global_override_linker_flags = askString();
			System.out.println("Give the global overriding archiver flags");
			System.out.print("Leave blank and hit return to skip this option");
			global_override_archiver_flags = askString();
		}
		System.out.print("Do you want to add to the global flags?");
		if (askBoolean())
		{
			System.out.print("Give global compiler flags");
			global_compiler_flags = askString();
			System.out.print("Give global linker flags");
			global_linker_flags = askString();
			System.out.print("Give global archiver flags");
			global_archiver_flags = askString();
		}
		System.out.print("Do you want to add something to the module wide flags?");
		if (askBoolean())
		{
			System.out.print("Give module wide compiler flags");
			module_compililer_flags = askString();
			System.out.print("Give module wide linker flags");
			module_linker_flags = askString();
			System.out.print("Give module wide archiver flags");
			module_archiver_flags = askString();
		}
		System.out.print("Do you want to add to the global flags conditionally?");
		if (askBoolean())
		{
			try {
				setFlags(dynamic_compiler_flags, "global compiler");
				setFlags(dynamic_linker_flags, "global linker");
				setFlags(dynamic_archiver_flags, "global archiver");
			} catch (IOException e) {
				System.err.println("Something went wrong in capturing input");
				System.exit(ErrorCode.GENERIC);
			}
		}
		System.out.print("Do you want to add to the module flags conditionally?");
		if (askBoolean())
		{
			try {
				setFlags(dynamic_module_compiler_flags, "module wide compiler");
				setFlags(dynamic_module_linker_flags, "module wide linker");
				setFlags(dynamic_module_archiver_flags, "module wide archiver");
			} catch (IOException e) {
				System.err.println("Something went wrong in capturing input");
				System.exit(ErrorCode.GENERIC);
			}
		}
	}