a tad more type hinting