support resultType: 'both'