abstraction of peer picker