used @:generic