add Factory Firl for independently create real object