the hell? This is not readable at all... You need to find a different way to write this method and other methods like it.