it's invoked here as it needs to be executed as fast as possible