this uses bashisms so make sure we require bash
1 file changed