this took too long… but at least is done now