what is 40? This looks like a magic number, which should be replaced by a speaking constant. Otherwise, it is not readable for someone else.