removed checkpoint because it doesnt do good at all