removed some <? super Throwable>s because that's rather unnecessary