simplified to a basic Component