public override PinState Read() { PinState newState = Read(base.InnerPin); if (this._lastState != newState) { this.OnStateChanged(new PinStateChangeEventArgs(this._lastState, newState)); } return newState; }