spintronic devices