Create the foundation - abstract InputElement