use ft as function type