Added more exception throwing