implement participating module