The hepatic portal vein drains blood to liver from