This is quite slow, should've tested...