Make it more compact, hoping that there will be no more functions involved