fix rethrow not working without supper, remove code stink