package Ġcom . t ng tech . j given . scenario . state Ċ Ċ import Ġcom . intellij . psi . Psi Field Ċ import Ġcom . t ng tech . j given . resolution . Resolution Handler Ċ Ċ class ĠJ Given Usage Provider ( ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġscenario State Provider : ĠScenario State Annotation Provider , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġresolution Handler : ĠResolution Handler , ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġreference Factory : ĠReference Factory Ċ ) Ġ{ ĊĠĠĠ Ġfun Ġcreate Reference If J Given Usage ( field To Search : ĠPsi Field , Ġfield : ĠPsi Field ) Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġscenario State Provider . is J Given Scenario State ( field ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġfield To Search Ġ!= Ġfield ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ&& Ġresolution Handler . resolution Matches ( field , Ġfield To Search ) Ġ-> Ġreference Factory . reference For ( field ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġnull ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ċ } Ċ