include exception cause when throwing new exception (combine RuntimeException in Exception handling -- they are almst identical)
include exception cause when throwing new exception (combine RuntimeException in Exception handling -- they are almst identical)