try-catches everywhere