component method