modified: ci func.