some stuff about components