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