@sig(H/ ("a", "b") >> "a")
def fst(tup):
    x, y = tup
    return x
Testing IsValidReason support
dataset/ETHPy150Open billpmurphy/hask/hask/Data/Tuple.py/fst--crossover with--dataset/ETHPy150Open AppScale/appscale/AppServer/lib/django-1.4/django/contrib/gis/geos/tests/test_geos.py/GEOSTest.test27_valid_reason