use typed-API in cross, not crossWithTiny