More useful smart class methods, adding item component