please rename `h` to `handle`, else pylint complains