3OW3YNZXF6DR2EI5XS7PDHUUZMARDU2JUJFJKIEWXQNSMCIBVAOQC
7HOBLRD43W2R5OVOYZVDO5LYPBZS7OSLDS7FH4NVNMBL3AZGMLSQC
IVLLXQ5ZWZDKHO4TNQG3TPXN34H6Y2WXPAGSO4PWCYNSKUZWOEJQC
SXEYMYF7P4RZMZ46WPL4IZUTSQ2ATBWYZX7QNVMS3SGOYXYOHAGQC
M5FK3ABTKBDG6HHW32G7UKRJEJQKD2U7BPXNZ3HVHBKULWVV6CTQC
BE7GUCI2N6TX3P2HRMFSH7XLJKILDPOKOXKA7HWOABBFNKCKMZLAC
I52XSRUH5RVHQBFWVMAQPTUSPAJ4KNVID2RMI3UGCVKFLYUO6WZAC
6WFOU7UXCYM5UWA5WVZ72XFRJWJA5GWCIAC5PI5NOEFHNFD3VKNAC
YN63NUZO4LVJ7XPMURDULTXBVJKW5MVCTZ24R7Z52QMHO3HPDUVQC
CCLLB7OIFNFYJZTG3UCI7536TOCWSCSXR67VELSB466R24WLJSDAC
Q45QHPO4HDTEZF2W4UDZSYYQ46BPEIWSW4GJILZR5HTJNLKXJABQC
let mut now_ = HashSet::new();
let mut result = Vec::new();
for &h in now.iter() {
let original: HashSet<_> = original.iter().collect();
let mut now_ = HashSet::with_capacity(original.len());
let mut result = Vec::with_capacity(original.len());
let mut stack: Vec<_> = now.iter().rev().cloned().collect();
while let Some(h) = stack.pop() {
stack.push(h);
let l0 = stack.len();
if let Some(ref rem) = remote_changes {
if txn.remote_has_change(rem, &d.into())? {
continue;
}
}
if now_.insert(d) {
result.push(d);
continue;
if original.get(&d).is_some() && now_.get(&d).is_none() {
// The user missed a dep.
stack.push(d);