added trt catch and throws logic and changed constructors