#pull all XXX_nuc.txt from ftp://ftp.ebi.ac.uk/pub/databases/ipd/imgt/hla/alignments

#run fileOperation.ExtractFastaAllExonAllGene for all align.txt, fill in all pad seq

	/Users/rwang/Downloads/ruleset332prep/input/
	/Users/rwang/Downloads/ruleset332prep/output/
	
#group all EFGHJKLY gene together

	cat ruleset332prep/output/E-exon1.fa ruleset332prep/output/F-exon1.fa  ruleset332prep/output/G-exon1.fa ruleset332prep/output/H-exon1.fa ruleset332prep/output/J-exon1.fa ruleset332prep/output/K-exon1.fa ruleset332prep/output/L-exon1.fa ruleset332prep/output/Y-exon1.fa> ruleset332prep/output/O-exon1.fa
	cat ruleset332prep/output/E-exon2.fa ruleset332prep/output/F-exon2.fa  ruleset332prep/output/G-exon2.fa ruleset332prep/output/H-exon2.fa ruleset332prep/output/J-exon2.fa ruleset332prep/output/K-exon2.fa ruleset332prep/output/L-exon2.fa ruleset332prep/output/Y-exon2.fa> ruleset332prep/output/O-exon2.fa
	cat ruleset332prep/output/E-exon3.fa ruleset332prep/output/F-exon3.fa  ruleset332prep/output/G-exon3.fa ruleset332prep/output/H-exon3.fa ruleset332prep/output/J-exon3.fa ruleset332prep/output/K-exon3.fa ruleset332prep/output/L-exon3.fa ruleset332prep/output/Y-exon3.fa> ruleset332prep/output/O-exon3.fa
	cat ruleset332prep/output/E-exon4.fa ruleset332prep/output/F-exon4.fa  ruleset332prep/output/G-exon4.fa ruleset332prep/output/H-exon4.fa ruleset332prep/output/J-exon4.fa ruleset332prep/output/K-exon4.fa ruleset332prep/output/L-exon4.fa ruleset332prep/output/Y-exon4.fa> ruleset332prep/output/O-exon4.fa
	cat ruleset332prep/output/E-exon5.fa ruleset332prep/output/F-exon5.fa  ruleset332prep/output/G-exon5.fa ruleset332prep/output/H-exon5.fa ruleset332prep/output/J-exon5.fa ruleset332prep/output/K-exon5.fa ruleset332prep/output/L-exon5.fa ruleset332prep/output/Y-exon5.fa> ruleset332prep/output/O-exon5.fa
	cat ruleset332prep/output/E-exon6.fa ruleset332prep/output/F-exon6.fa  ruleset332prep/output/G-exon6.fa ruleset332prep/output/H-exon6.fa ruleset332prep/output/J-exon6.fa ruleset332prep/output/K-exon6.fa ruleset332prep/output/L-exon6.fa ruleset332prep/output/Y-exon6.fa> ruleset332prep/output/O-exon6.fa
	cat ruleset332prep/output/E-exon7.fa ruleset332prep/output/F-exon7.fa  ruleset332prep/output/G-exon7.fa ruleset332prep/output/H-exon7.fa ruleset332prep/output/J-exon7.fa ruleset332prep/output/K-exon7.fa ruleset332prep/output/L-exon7.fa ruleset332prep/output/Y-exon7.fa> ruleset332prep/output/O-exon7.fa

#cat short exon1567 together for ABC
	mkdir ruleset332prep/classIshort/
	cat ruleset332prep/output/A-exon1.fa ruleset332prep/output/B-exon1.fa ruleset332prep/output/C-exon1.fa > ruleset332prep/classIshort/ABC-exon1.fa
	cat ruleset332prep/output/A-exon5.fa ruleset332prep/output/B-exon5.fa ruleset332prep/output/C-exon5.fa > ruleset332prep/classIshort/ABC-exon5.fa
	cat ruleset332prep/output/A-exon6.fa ruleset332prep/output/B-exon6.fa ruleset332prep/output/C-exon6.fa > ruleset332prep/classIshort/ABC-exon6.fa
	cat ruleset332prep/output/A-exon7.fa ruleset332prep/output/B-exon7.fa ruleset332prep/output/C-exon7.fa > ruleset332prep/classIshort/ABC-exon7.fa
	
#append EFGHJKLY gene to ABC for all exon
	mv ruleset332prep/classIshort/* ruleset332prep/output/

	cat ruleset332prep/output/ABC-exon1.fa ruleset332prep/output/O-exon1.fa > ruleset332prep/classIshort/ABC-exon1.fa
	cat ruleset332prep/output/ABC-exon5.fa ruleset332prep/output/O-exon5.fa > ruleset332prep/classIshort/ABC-exon5.fa
	cat ruleset332prep/output/ABC-exon6.fa ruleset332prep/output/O-exon6.fa > ruleset332prep/classIshort/ABC-exon6.fa
	cat ruleset332prep/output/ABC-exon7.fa ruleset332prep/output/O-exon7.fa > ruleset332prep/classIshort/ABC-exon7.fa
	
	mkdir ruleset332prep/classI/
	cat ruleset332prep/output/A-exon2.fa ruleset332prep/output/O-exon2.fa > ruleset332prep/classI/A-exon2.fa
	cat ruleset332prep/output/B-exon2.fa ruleset332prep/output/O-exon2.fa > ruleset332prep/classI/B-exon2.fa
	cat ruleset332prep/output/C-exon2.fa ruleset332prep/output/O-exon2.fa > ruleset332prep/classI/C-exon2.fa
	cat ruleset332prep/output/A-exon3.fa ruleset332prep/output/O-exon3.fa > ruleset332prep/classI/A-exon3.fa
	cat ruleset332prep/output/B-exon3.fa ruleset332prep/output/O-exon3.fa > ruleset332prep/classI/B-exon3.fa
	cat ruleset332prep/output/C-exon3.fa ruleset332prep/output/O-exon3.fa > ruleset332prep/classI/C-exon3.fa
	cat ruleset332prep/output/A-exon4.fa ruleset332prep/output/O-exon4.fa > ruleset332prep/classI/A-exon4.fa
	cat ruleset332prep/output/B-exon4.fa ruleset332prep/output/O-exon4.fa > ruleset332prep/classI/B-exon4.fa
	cat ruleset332prep/output/C-exon4.fa ruleset332prep/output/O-exon4.fa > ruleset332prep/classI/C-exon4.fa

#generate exon23 and exon67 and bridge23
	run GenerateExon23 and GenerateExon67
	
	/Users/rwang/Downloads/ruleset332prep/classI/
	/Users/rwang/Downloads/ruleset332prep/classI/
	A
	
	/Users/rwang/Downloads/ruleset332prep/classI/
	/Users/rwang/Downloads/ruleset332prep/classI/
	B
	
	/Users/rwang/Downloads/ruleset332prep/classI/
	/Users/rwang/Downloads/ruleset332prep/classI/
	C
	
	/Users/rwang/Downloads/ruleset332prep/classIshort/
	/Users/rwang/Downloads/ruleset332prep/classIshort/
	ABC
	/Users/rwang/Downloads/ruleset332prep/input/ABC67-pad.txt
	
#Combine DPA1/DPA2 DPB1/DPB2
	mkdir ruleset332prep/classII/
	mkdir ruleset332prep/classIIshort/
	cat ./ruleset332prep/output/DPA1-exon1.fa ./ruleset332prep/output/DPA2-exon1.fa > ./ruleset332prep/classIIshort/DPA1-exon1.fa
	cat ./ruleset332prep/output/DPA1-exon4.fa ./ruleset332prep/output/DPA2-exon4.fa > ./ruleset332prep/classIIshort/DPA1-exon4.fa
	cat ./ruleset332prep/output/DPA1-exon2.fa ./ruleset332prep/output/DPA2-exon2.fa > ./ruleset332prep/classII/DPA1-exon2.fa
	cat ./ruleset332prep/output/DPA1-exon3.fa ./ruleset332prep/output/DPA2-exon3.fa > ./ruleset332prep/classII/DPA1-exon3.fa
	
	cat ./ruleset332prep/output/DPB1-exon1.fa ./ruleset332prep/output/DPB2-exon1.fa > ./ruleset332prep/classIIshort/DPB1-exon1.fa
	cat ./ruleset332prep/output/DPB1-exon4.fa ./ruleset332prep/output/DPB2-exon4.fa > ./ruleset332prep/classIIshort/DPB1-exon4.fa
	cat ./ruleset332prep/output/DPB1-exon2.fa ./ruleset332prep/output/DPB2-exon2.fa > ./ruleset332prep/classII/DPB1-exon2.fa
	cat ./ruleset332prep/output/DPB1-exon3.fa ./ruleset332prep/output/DPB2-exon3.fa > ./ruleset332prep/classII/DPB1-exon3.fa
	
#organize
	cp ./ruleset332prep/output/DQA1-exon1* ./ruleset332prep/classIIshort/
	cp ./ruleset332prep/output/DQA1-exon4* ./ruleset332prep/classIIshort/
	cp ./ruleset332prep/output/DQA1-exon2* ./ruleset332prep/classII/
	cp ./ruleset332prep/output/DQA1-exon3* ./ruleset332prep/classII/
	
	cp ./ruleset332prep/output/DQB1-exon1* ./ruleset332prep/classIIshort/
	cp ./ruleset332prep/output/DQB1-exon4* ./ruleset332prep/classIIshort/
	cp ./ruleset332prep/output/DQB1-exon2* ./ruleset332prep/classII/
	cp ./ruleset332prep/output/DQB1-exon3* ./ruleset332prep/classII/
	
	cp ./ruleset332prep/output/DRB-exon1.fa ./ruleset332prep/classIIshort/DRB1-exon1.fa
	cp ./ruleset332prep/output/DRB-exon4.fa ./ruleset332prep/classIIshort/DRB1-exon4.fa
	cp ./ruleset332prep/output/DRB-exon2.fa ./ruleset332prep/classII/DRB1-exon2.fa
	cp ./ruleset332prep/output/DRB-exon3.fa ./ruleset332prep/classII/DRB1-exon3.fa
	
	mkdir /Users/rwang/Downloads/ruleset332prep/MICA
	cp ./ruleset332prep/output/MIC* ./ruleset332prep/MICA
	
#Organize
	mkdir ./ruleset332prep/fasta/
	
	cp ./ruleset332prep/classI/* ./ruleset332prep/fasta/
	cp ./ruleset332prep/classII/* ./ruleset332prep/fasta/
	cp ./ruleset332prep/classIIshort/* ./ruleset332prep/fasta/
	
	cp ./ruleset332prep/classIshort/ABC-exon1.fa ./ruleset332prep/fasta/A-exon1.fa
	cp ./ruleset332prep/classIshort/ABC-exon1.fa ./ruleset332prep/fasta/B-exon1.fa
	cp ./ruleset332prep/classIshort/ABC-exon1.fa ./ruleset332prep/fasta/C-exon1.fa
	
	cp ./ruleset332prep/classIshort/ABC-exon5.fa ./ruleset332prep/fasta/A-exon5.fa
	cp ./ruleset332prep/classIshort/ABC-exon5.fa ./ruleset332prep/fasta/B-exon5.fa
	cp ./ruleset332prep/classIshort/ABC-exon5.fa ./ruleset332prep/fasta/C-exon5.fa
	
	cp ./ruleset332prep/classIshort/ABC-exon67.fa ./ruleset332prep/fasta/A-exon67.fa
	cp ./ruleset332prep/classIshort/ABC-exon67.fa ./ruleset332prep/fasta/B-exon67.fa
	cp ./ruleset332prep/classIshort/ABC-exon67.fa ./ruleset332prep/fasta/C-exon67.fa

#run ruleset.padEnd to pad end for AG/GT for some exons

	A
	/Users/rwang/Downloads/ruleset332prep/fasta/
	
	B
	/Users/rwang/Downloads/ruleset332prep/fasta/
	
	C
	/Users/rwang/Downloads/ruleset332prep/fasta/
	
	DPA1
	/Users/rwang/Downloads/ruleset332prep/fasta/
	
	....
	
    MICA
	.....
	
#run fileOperation.GenerateMICAbridge23 and fileOperation.GenerateMICAbridge45

	/Users/rwang/Downloads/ruleset332prep/fasta/
	/Users/rwang/Downloads/ruleset332prep/fasta/
	MICA
	
	/Users/rwang/Downloads/ruleset332prep/fasta/
	/Users/rwang/Downloads/ruleset332prep/fasta/
	MICB
	
#run CompareRulesetFile for all check size and add sudo

	/Users/rwang/Downloads/ruleset332prep/fasta/
	/Users/rwang/HLA_Ruleset_github/fasta/
	A

	*make sure exon same length except internal insertion.