add caipiao function