boolean (Update update) { ChildContext otherChildContext = update.myChildContext; if (myChildContext == null && otherChildContext == null) { return canEat(update); } else if (myChildContext != null && otherChildContext != null) { var thisSkeleton = ThreadContext.getContextSkeleton(myChildContext.getContext()); var otherSkeleton = ThreadContext.getContextSkeleton(otherChildContext.getContext()); return thisSkeleton.equals(otherSkeleton) && canEat(update); } else { return false; } }