why catching `\Exception` ? It seems compiler only throws RuntimeException.
IMO, no need to catch any exception here