pub trait IWeapon { fn use_it(&self); }