
// This is a startup file for magma. 
// Put it where magma can find it, when you type in    load "startup.txt";
// This is to make it easier for the user to run the available magma code, 
// when it is stored in the given subdirectories
// without having to manually type in the directory each time.

base_directory:="D://MagmaPrograms/";      //<--  modify this to reflect your path to the base directory
                                            

MI:= base_directory cat "/Matsumoto-Imai/MI";
PMI:=base_directory cat "/Matsumoto-Imai/PMI";
SFLASH:=base_directory cat "/Matsumoto-Imai/SFLASH";
HFE:=base_directory cat "/HiddenFieldEquations/HFE";
HFEv:=base_directory cat "/HiddenFieldEquations/HFEv-";
OV:=base_directory cat "/OilVinegar/Balanced_OV";
UOV:=base_directory cat "/OilVinegar/Unbalanced_OV";
Rainbow:=base_directory cat "/OilVinegar/Rainbow";
MQDSS:= base_directory cat "Multivariate-Quadratic-Digital-Signature-Scheme";
SimpleMatrix:=base_directory cat "/SimpleMatrix/SimpleMatrix";
rSM:=base_directory cat "/SimpleMatrix/rectangularSimpleMatrix";


print "Choose from the following list to change directory, Enter the corresponding number:";

print "1. MI (Matsumoto-Imai)";
print "2. PMI (Perturbed Matsumoto-Imai)";
print "3. SFLASH";
print "4. HFE";
print "5. HFEv-";
print "6. Balanced Oil Vinegar";
print "7. Unbalanced Oil Vinegar";
print "8. Rainbow";
print "9. Multivariate Quadratic Digital Signature Scheme";
print "10. SimpleMatrix";
print "11. Rectangular Simple Matrix";

readi input;

case input:
	when 1: ChangeDirectory(MI);
	when 2: ChangeDirectory(PMI);
	when 3: ChangeDirectory(SFLASH);
	when 4: ChangeDirectory(HFE);
	when 5: ChangeDirectory(HFEv);
	when 6: ChangeDirectory(OV);
	when 7: ChangeDirectory(UOV);
	when 8: ChangeDirectory(Rainbow);
        when 9: ChangeDirectory(MQDSS) ;
	when 10: ChangeDirectory(SimpleMatrix);
	when 11: ChangeDirectory(rSM);
end case;
