static AutoCloseable combineAutoCloseables(final AutoCloseable a, final AutoCloseable b) { ret a == null ? b : b == null ? a : autocloseable { a.close(); b.close(); }; } static AutoCloseable combineAutoCloseables(Iterable l) { ret foldl(func(AutoCloseable a, AutoCloseable b) -> AutoCloseable { combineAutoCloseables(a,b) }, l); }