1. adding function of changing component