added try / catch