replaced ISE with RuntimeException