type annotation for chain