GenerateCacheLPRequest:
PROC []
RETURNS [Request] = {
rbRqstCycle: Cycle ← DynaSeer.MakeCycle[RBRqst, myId, myId, Random.NextInt[myState.rs]];
wbRqstCycle: Cycle ← DynaSeer.MakeCycle[WBRqst, myId, myId, Random.NextInt[myState.rs]];
wsRqstCycle: Cycle ← DynaSeer.MakeCycle[WSRqst, myId, myId, Random.NextInt[myState.rs]];
rand: INT ← Random.NextInt[myState.rs];
IF rand <= myState.cacheRBRand THEN RETURN [DynaSeer.MakeRequest[Two, rbRqstCycle, Low]];
IF rand <= myState.cacheWBRand THEN RETURN [DynaSeer.MakeRequest[Five, wbRqstCycle, High]];
IF rand <= myState.cacheWSRand THEN RETURN [DynaSeer.MakeRequest[Two, wsRqstCycle, Low]];
RETURN [NIL];
};