added p26, better algorithm available, current runtime 3.8s