code reflectoring, prepare for multi-instance