Low cast nutrition of dm
"diabetes mellitus" AND "dietary management" AND "low cost"
low cost nutrition for diabetes mellitus affordable diet plan
https://www.cdc.gov/diabetes/healthy-eating/6-tips-eating-he…
| Food | Why it Works | Cost Level |
|---|---|---|
| Lentils & beans (dal, rajma, chana) | High fiber, low GI, slow glucose release | Very cheap |
| Whole oats | Beta-glucan fiber, lowers post-meal glucose | Cheap |
| Brown rice / millets (jowar, bajra, ragi) | Lower GI than white rice, more fiber | Cheap |
| Whole wheat chapati | Better GI than white bread | Cheap |
| Sweet potato (boiled) | Moderate GI, filling, nutritious | Cheap |
| Food | Benefit | Cost Level |
|---|---|---|
| Eggs | High quality protein, minimal glucose impact | Cheap |
| Lentils / dals | Protein + fiber combo | Very cheap |
| Low-fat curd/yogurt | Protein + probiotics | Cheap |
| Canned fish / dried fish | Omega-3s, protein | Cheap |
| Soy (tofu, soy milk) | Plant protein, low GI | Cheap |
| Avoid | Why |
|---|---|
| White rice in large portions | High GI, rapid glucose spike |
| Maida (refined flour) products | High GI, low fiber |
| Sugary drinks, packaged juices | Rapid sugar spikes |
| Deep-fried snacks (samosa, puri, bhujia) | High calories, poor glycemic control |
| White bread, instant noodles | High GI |
| Meal | Options | Approx. Cost |
|---|---|---|
| Breakfast | Oatmeal with a few nuts + 1 egg (boiled) | Low |
| Mid-morning | 1 guava or small fruit | Very low |
| Lunch | 2 whole wheat chapatis + moong dal + spinach sabzi | Very low |
| Evening snack | Roasted chana (chickpeas) + buttermilk | Very low |
| Dinner | Brown rice (small portion) + rajma or dal + salad (cucumber, tomato) | Low |
Give ppt
mkdir -p /tmp/workspace/dm-nutrition-ppt && ls /tmp/workspace/dm-nutrition-ppt/
~/dm-nutrition-ppt/create_ppt.py
from pptx import Presentation
from pptx.util import Inches, Pt, Emu
from pptx.dml.color import RGBColor
from pptx.enum.text import PP_ALIGN, MSO_ANCHOR
from io import BytesIO
prs = Presentation()
prs.slide_width = Inches(13.333)
prs.slide_height = Inches(7.5)
blank = prs.slide_layouts[6]
# ─── COLORS ───
GREEN_DARK = RGBColor(0x1B, 0x5E, 0x20) # deep green
GREEN_MID = RGBColor(0x2E, 0x7D, 0x32) # medium green
GREEN_LIGHT = RGBColor(0xA5, 0xD6, 0xA7) # light green accent
ORANGE = RGBColor(0xE6, 0x5C, 0x00) # accent orange
WHITE = RGBColor(0xFF, 0xFF, 0xFF)
DARK_GRAY = RGBColor(0x21, 0x21, 0x21)
LIGHT_BG = RGBColor(0xF1, 0xF8, 0xE9) # very light green bg
AMBER = RGBColor(0xFF, 0x8F, 0x00)
def add_rect(slide, x, y, w, h, fill_rgb, line_rgb=None, line_width=0):
shape = slide.shapes.add_shape(1, Inches(x), Inches(y), Inches(w), Inches(h))
shape.fill.solid()
shape.fill.fore_color.rgb = fill_rgb
if line_rgb:
shape.line.color.rgb = line_rgb
shape.line.width = Pt(line_width)
else:
shape.line.fill.background()
return shape
def add_text(slide, text, x, y, w, h, size, bold=False, color=DARK_GRAY,
align=PP_ALIGN.LEFT, italic=False, wrap=True):
tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h))
tf = tb.text_frame
tf.word_wrap = wrap
tf.margin_left = Pt(4)
tf.margin_right = Pt(4)
tf.margin_top = Pt(2)
tf.margin_bottom = Pt(2)
p = tf.paragraphs[0]
p.alignment = align
run = p.add_run()
run.text = text
run.font.size = Pt(size)
run.font.bold = bold
run.font.italic = italic
run.font.color.rgb = color
run.font.name = "Calibri"
return tf
def add_multiline(slide, lines, x, y, w, h, size, color=DARK_GRAY, bold_first=False,
line_spacing=1.15, wrap=True):
"""lines: list of (text, bold, color_override_or_None)"""
tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h))
tf = tb.text_frame
tf.word_wrap = wrap
tf.margin_left = Pt(4)
tf.margin_right = Pt(4)
tf.margin_top = Pt(2)
tf.margin_bottom = Pt(2)
for i, item in enumerate(lines):
text, bold, col = item
if i == 0:
p = tf.paragraphs[0]
else:
p = tf.add_paragraph()
p.space_after = Pt(2)
run = p.add_run()
run.text = text
run.font.size = Pt(size)
run.font.bold = bold
run.font.color.rgb = col if col else color
run.font.name = "Calibri"
return tf
# ════════════════════════════════════════════════
# SLIDE 1 – TITLE
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
# Full background
add_rect(slide, 0, 0, 13.333, 7.5, GREEN_DARK)
# Bottom accent strip
add_rect(slide, 0, 6.5, 13.333, 1.0, GREEN_MID)
# Decorative box top right
add_rect(slide, 10.5, 0, 2.833, 2.5, GREEN_MID)
# Orange accent line
add_rect(slide, 0, 6.3, 13.333, 0.08, ORANGE)
add_text(slide, "Low-Cost Nutrition", 1, 1.5, 10, 1.5, 54, bold=True, color=WHITE, align=PP_ALIGN.LEFT)
add_text(slide, "for Diabetes Mellitus (DM)", 1, 2.9, 10, 1.0, 36, bold=False, color=GREEN_LIGHT, align=PP_ALIGN.LEFT)
add_text(slide, "Practical, Affordable Dietary Strategies for Blood Sugar Control", 1, 4.1, 10, 0.7, 18, bold=False, color=WHITE, align=PP_ALIGN.LEFT, italic=True)
add_text(slide, "Medical Nutrition Therapy | Evidence-Based Guidelines", 1, 6.55, 11, 0.6, 14, bold=False, color=WHITE, align=PP_ALIGN.LEFT)
# ════════════════════════════════════════════════
# SLIDE 2 – WHAT IS MEDICAL NUTRITION THERAPY
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, 13.333, 7.5, LIGHT_BG)
add_rect(slide, 0, 0, 13.333, 1.15, GREEN_DARK)
add_rect(slide, 0, 1.15, 0.07, 6.35, ORANGE)
add_text(slide, "What is Medical Nutrition Therapy (MNT)?", 0.3, 0.15, 12, 0.85, 28, bold=True, color=WHITE)
cards = [
("🎯 Goal", "Achieve adequate nutrition, maintain ideal body weight, and control blood glucose.", GREEN_DARK),
("📉 Caloric Restriction", "1,000–1,500 kcal/day (women)\n1,200–1,800 kcal/day (men)\nTarget ≥5% weight loss if overweight.", GREEN_MID),
("🥗 Eating Patterns", "Mediterranean, Plant-based, DASH, or Low-Carbohydrate diets all achieve similar glycemic goals.", GREEN_DARK),
("🚫 Key Avoidance", "Avoid sugar-sweetened beverages.\nOptimize non-starchy vegetables & whole grains.", ORANGE),
]
col_x = [0.25, 3.55, 6.85, 10.15]
for i, (title, body, col) in enumerate(cards):
add_rect(slide, col_x[i], 1.5, 2.9, 5.0, col)
add_rect(slide, col_x[i], 1.5, 2.9, 0.7, RGBColor(0,0,0)) # darker header strip
add_text(slide, title, col_x[i]+0.1, 1.55, 2.7, 0.6, 15, bold=True, color=WHITE)
add_text(slide, body, col_x[i]+0.1, 2.3, 2.7, 3.9, 13, color=WHITE, wrap=True)
add_text(slide, "Source: Washington Manual of Medical Therapeutics, p.885", 0.25, 7.1, 12, 0.35, 10, italic=True, color=GREEN_MID)
# ════════════════════════════════════════════════
# SLIDE 3 – LOW-COST CARBOHYDRATE CHOICES
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, 13.333, 7.5, LIGHT_BG)
add_rect(slide, 0, 0, 13.333, 1.15, GREEN_DARK)
add_rect(slide, 0, 1.15, 0.07, 6.35, GREEN_LIGHT)
add_text(slide, "Affordable Carbohydrate Sources (Low Glycemic Index)", 0.3, 0.15, 12, 0.85, 26, bold=True, color=WHITE)
add_text(slide, "Choose slow-digesting carbs that cause gradual glucose rise", 0.3, 1.25, 12, 0.5, 15, italic=True, color=GREEN_DARK)
headers = ["Food", "Why It Helps", "GI Level", "Cost"]
rows = [
("Lentils & Beans\n(Dal, Rajma, Chana)", "High fiber + protein;\nslow glucose release", "Low (29–45)", "Very Cheap"),
("Whole Oats", "Beta-glucan fiber;\nlowers post-meal glucose", "Low (55)", "Cheap"),
("Millets\n(Jowar, Bajra, Ragi)", "Higher fiber than white rice;\nmicronutrient-rich", "Low–Medium", "Very Cheap"),
("Whole Wheat Chapati", "Better GI than white bread;\nlow cost staple", "Medium (52)", "Cheap"),
("Sweet Potato (boiled)", "Filling, nutritious;\nmoderate GI", "Medium (63)", "Cheap"),
]
col_widths = [2.8, 3.5, 2.2, 2.0]
col_xs = [0.3, 3.1, 6.65, 8.9]
row_ys = [2.0, 2.85, 3.65, 4.5, 5.35]
# Header row
for j, (hdr, cx, cw) in enumerate(zip(headers, col_xs, col_widths)):
add_rect(slide, cx, 1.85, cw-0.07, 0.55, GREEN_MID)
add_text(slide, hdr, cx+0.05, 1.87, cw-0.1, 0.5, 13, bold=True, color=WHITE)
# Data rows
for i, row in enumerate(rows):
bg = LIGHT_BG if i % 2 == 0 else RGBColor(0xC8, 0xE6, 0xC9)
for j, (cell, cx, cw) in enumerate(zip(row, col_xs, col_widths)):
add_rect(slide, cx, row_ys[i], cw-0.07, 0.77, bg, line_rgb=GREEN_LIGHT, line_width=0.5)
add_text(slide, cell, cx+0.06, row_ys[i]+0.04, cw-0.12, 0.7, 11.5, color=DARK_GRAY, wrap=True)
add_rect(slide, 0.3, 6.3, 11.0, 0.65, GREEN_DARK)
add_text(slide, "💡 Tip: Boiling/steaming lowers GI further compared to frying or pressure cooking at high heat.", 0.4, 6.33, 10.8, 0.6, 12, color=WHITE)
# ════════════════════════════════════════════════
# SLIDE 4 – PROTEIN & VEGETABLES
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, 13.333, 7.5, LIGHT_BG)
add_rect(slide, 0, 0, 13.333, 1.15, GREEN_DARK)
add_rect(slide, 0, 1.15, 0.07, 6.35, ORANGE)
add_text(slide, "Cheap Protein & Vegetable Sources for DM", 0.3, 0.15, 12, 0.85, 26, bold=True, color=WHITE)
# LEFT – Proteins
add_rect(slide, 0.25, 1.3, 6.1, 5.7, WHITE, line_rgb=GREEN_LIGHT, line_width=1)
add_rect(slide, 0.25, 1.3, 6.1, 0.55, GREEN_MID)
add_text(slide, "💪 Cheap Protein Sources", 0.35, 1.32, 5.9, 0.5, 16, bold=True, color=WHITE)
protein_items = [
"🥚 Eggs – high quality protein, minimal glucose impact",
"🫘 Lentils/Dal – protein + fiber combined; very cheap",
"🥛 Low-fat curd / yogurt – protein + probiotics",
"🐟 Canned/dried fish – omega-3 fatty acids + protein",
"🌱 Soy / Tofu – plant protein, low GI",
"🥜 Groundnuts (peanuts) – protein + healthy fats; cheap",
]
for i, item in enumerate(protein_items):
add_text(slide, item, 0.4, 2.0 + i * 0.72, 5.8, 0.65, 12.5, color=DARK_GRAY, wrap=True)
# RIGHT – Vegetables
add_rect(slide, 6.85, 1.3, 6.1, 5.7, WHITE, line_rgb=GREEN_LIGHT, line_width=1)
add_rect(slide, 6.85, 1.3, 6.1, 0.55, GREEN_DARK)
add_text(slide, "🥦 Best Non-Starchy Vegetables", 6.95, 1.32, 5.9, 0.5, 16, bold=True, color=WHITE)
veg_items = [
"Spinach, Methi (fenugreek), Palak",
"Cabbage, Cauliflower, Brinjal",
"Bitter gourd (Karela) – lowers glucose",
"Tomatoes, Onions, Cucumber",
"Bottle gourd (Lauki), Ridge gourd (Turai)",
"✅ All are affordable & blood-sugar friendly",
]
for i, item in enumerate(veg_items):
bold = (i == 5)
col = GREEN_DARK if i == 5 else DARK_GRAY
add_text(slide, item, 7.0, 2.0 + i * 0.72, 5.8, 0.65, 12.5, color=col, bold=bold, wrap=True)
add_text(slide, "Aim: 1 meatless meal/day → lower cost + less saturated fat", 0.3, 7.1, 12, 0.35, 11, italic=True, color=GREEN_MID)
# ════════════════════════════════════════════════
# SLIDE 5 – FOODS TO AVOID
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, 13.333, 7.5, LIGHT_BG)
add_rect(slide, 0, 0, 13.333, 1.15, RGBColor(0xB7, 0x1C, 0x1C))
add_rect(slide, 0, 1.15, 0.07, 6.35, ORANGE)
add_text(slide, "Foods to AVOID in Diabetes", 0.3, 0.15, 12, 0.85, 28, bold=True, color=WHITE)
avoid_data = [
("🥤 Sugar-Sweetened\nBeverages", "Rapid blood glucose spike;\nzero nutritional value", "Very High GI"),
("🍞 White Bread &\nRefined Flour (Maida)", "High GI; stripped of fiber;\nrapid glucose rise", "High GI (75+)"),
("🍚 Large portions of\nWhite Rice", "High GI when eaten alone;\nportion control is key", "High GI (72)"),
("🍟 Deep-Fried Snacks\n(Samosa, Puri, Bhujia)", "High calorie, poor glycemic\ncontrol, promotes weight gain", "High GI + fat"),
("🍜 Instant Noodles &\nProcessed Snacks", "Refined carbs + sodium;\nno fiber", "High GI"),
("🧃 Packaged Fruit Juices", "No fiber; rapid sugar\nabsorption same as soda", "Very High GI"),
]
red_bg = RGBColor(0xFF, 0xEB, 0xEB)
red_hdr = RGBColor(0xB7, 0x1C, 0x1C)
col_xs = [0.25, 2.5, 4.75, 7.0, 9.25, 11.5]
cw = 2.1
for i, (food, reason, gi) in enumerate(avoid_data):
cx = col_xs[i]
add_rect(slide, cx, 1.4, cw, 5.5, red_bg, line_rgb=RGBColor(0xFF, 0xCC, 0xCC), line_width=0.8)
add_rect(slide, cx, 1.4, cw, 0.9, red_hdr)
add_text(slide, food, cx+0.08, 1.42, cw-0.12, 0.85, 12.5, bold=True, color=WHITE, wrap=True)
add_text(slide, reason, cx+0.08, 2.38, cw-0.12, 2.2, 11.5, color=DARK_GRAY, wrap=True)
add_rect(slide, cx, 4.65, cw, 0.5, RGBColor(0xFF, 0xCC, 0xBC))
add_text(slide, gi, cx+0.08, 4.67, cw-0.12, 0.45, 11, bold=True, color=ORANGE, align=PP_ALIGN.CENTER)
add_rect(slide, 0.3, 5.35, 12.7, 0.75, RGBColor(0xB7, 0x1C, 0x1C))
add_text(slide, "💡 Eat whole fruit INSTEAD of fruit juice — fiber slows sugar absorption significantly.", 0.5, 5.38, 12.3, 0.65, 13, color=WHITE)
# ════════════════════════════════════════════════
# SLIDE 6 – SAMPLE MEAL PLAN
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, 13.333, 7.5, LIGHT_BG)
add_rect(slide, 0, 0, 13.333, 1.15, GREEN_DARK)
add_rect(slide, 0, 1.15, 0.07, 6.35, GREEN_LIGHT)
add_text(slide, "Sample Low-Cost 1-Day Meal Plan (~1,500 kcal)", 0.3, 0.15, 12, 0.85, 26, bold=True, color=WHITE)
meals = [
("🌅 Breakfast", "Oatmeal (½ cup oats) with a few nuts\n+ 1 boiled egg\n+ Unsweetened tea/coffee"),
("🍎 Mid-Morning", "1 whole guava OR small seasonal fruit\n(No fruit juice)"),
("🍱 Lunch", "2 whole wheat chapatis\n+ 1 cup moong dal\n+ Spinach/methi sabzi\n+ Salad (cucumber, tomato)"),
("🌤 Evening Snack", "Roasted chana (¼ cup)\n+ Buttermilk (low-fat)\nOR handful of peanuts"),
("🌙 Dinner", "¾ cup brown rice OR 2 chapatis\n+ Rajma / dal\n+ Mixed vegetable sabzi"),
]
meal_xs = [0.25, 2.85, 5.45, 8.05, 10.65]
for i, (title, content) in enumerate(meals):
cx = meal_xs[i]
add_rect(slide, cx, 1.4, 2.45, 5.4, WHITE, line_rgb=GREEN_LIGHT, line_width=0.8)
add_rect(slide, cx, 1.4, 2.45, 0.6, GREEN_MID)
add_text(slide, title, cx+0.08, 1.42, 2.28, 0.55, 13, bold=True, color=WHITE)
add_text(slide, content, cx+0.08, 2.1, 2.28, 4.5, 12, color=DARK_GRAY, wrap=True)
add_rect(slide, 0.25, 7.0, 12.7, 0.4, GREEN_DARK)
add_text(slide, "Target: High fiber | Low GI | Balanced macros | No added sugar | ~₹60–₹100/day (approx.)", 0.4, 7.02, 12.3, 0.35, 12, color=WHITE, bold=True)
# ════════════════════════════════════════════════
# SLIDE 7 – BUDGET SMART TIPS
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, 13.333, 7.5, LIGHT_BG)
add_rect(slide, 0, 0, 13.333, 1.15, GREEN_DARK)
add_rect(slide, 0, 1.15, 0.07, 6.35, AMBER)
add_text(slide, "Budget-Smart Practical Tips", 0.3, 0.15, 12, 0.85, 28, bold=True, color=WHITE)
tips = [
("1", "Plan Weekly Meals", "Reduces impulse buys, cuts waste, saves 15–25% of food cost."),
("2", "Buy in Bulk", "Dry lentils, oats, whole grains — much cheaper per kg when bought in bulk."),
("3", "Buy Frozen/Canned Veggies", "Equally nutritious as fresh; choose water-packed, no added salt or sugar."),
("4", "Cook at Home", "Restaurant & packaged foods cost more and are harder to control for diabetes."),
("5", "One Meatless Meal Daily", "Dal-based meals cut cost AND reduce saturated fat intake."),
("6", "Grow Kitchen Garden", "Methi, spinach, tomatoes, chilli — easy to grow; nearly free nutrition."),
("7", "Buy Generic Brands", "Store/generic brands save 20–30% vs. branded; same nutritional quality."),
("8", "Stretch Recipes", "Large batch soups, dals, vegetable stews last multiple days; cost-effective."),
]
tip_xs = [0.25, 4.6, 8.95]
tip_ys = [1.4, 2.9, 4.4, 5.9]
for i, (num, title, desc) in enumerate(tips):
row = i % 3 # actually 3 per row, 3 columns
col = i // 3
# rearrange as 3 cols x 3 rows (last cell empty)
pass
# Lay out as 2 columns x 4 rows
lx = [0.25, 6.85]
ly = [1.4, 2.75, 4.1, 5.45]
for i, (num, title, desc) in enumerate(tips):
cx = lx[i % 2]
ry = ly[i // 2]
add_rect(slide, cx, ry, 6.2, 1.1, WHITE, line_rgb=GREEN_LIGHT, line_width=0.6)
add_rect(slide, cx, ry, 0.55, 1.1, AMBER)
add_text(slide, num, cx+0.05, ry+0.2, 0.45, 0.7, 20, bold=True, color=WHITE, align=PP_ALIGN.CENTER)
add_text(slide, title, cx+0.65, ry+0.06, 5.4, 0.4, 13, bold=True, color=GREEN_DARK)
add_text(slide, desc, cx+0.65, ry+0.5, 5.4, 0.55, 11.5, color=DARK_GRAY, wrap=True)
add_text(slide, "Source: CDC Diabetes Healthy Eating on a Budget Guidelines", 0.25, 7.1, 12, 0.35, 10, italic=True, color=GREEN_MID)
# ════════════════════════════════════════════════
# SLIDE 8 – KEY TAKEAWAYS
# ════════════════════════════════════════════════
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, 13.333, 7.5, GREEN_DARK)
add_rect(slide, 0, 6.3, 13.333, 1.2, GREEN_MID)
add_rect(slide, 0, 6.28, 13.333, 0.08, ORANGE)
add_text(slide, "Key Takeaways", 0.5, 0.25, 12, 0.85, 32, bold=True, color=WHITE, align=PP_ALIGN.LEFT)
add_rect(slide, 0.5, 1.05, 12.3, 0.06, GREEN_LIGHT)
takeaways = [
("✅", "Expensive 'diabetic foods' are NOT required — affordable whole foods work equally well."),
("✅", "Focus on fiber, portion control, and reducing refined carbs above all else."),
("✅", "Lentils, millets, oats, eggs, and non-starchy vegetables are the cheapest diabetes-friendly staples."),
("✅", "Avoid sugar-sweetened beverages — this single change has the highest impact on blood glucose."),
("✅", "Carbohydrate counting helps patients on insulin therapy adjust doses accurately."),
("🏃", "Exercise (150 min/week moderate activity) enhances diet effects and is completely FREE."),
]
for i, (icon, text) in enumerate(takeaways):
ry = 1.3 + i * 0.88
add_rect(slide, 0.5, ry, 0.55, 0.72, GREEN_MID)
add_text(slide, icon, 0.52, ry+0.06, 0.5, 0.6, 18, align=PP_ALIGN.CENTER, color=WHITE)
add_text(slide, text, 1.15, ry+0.07, 11.5, 0.6, 14, color=WHITE, wrap=True)
add_text(slide, "Washington Manual of Medical Therapeutics | CDC Diabetes | Harrison's Principles of Internal Medicine 22E", 0.5, 6.38, 12.3, 0.6, 11, italic=True, color=WHITE, align=PP_ALIGN.CENTER)
# ─── SAVE ───
out_path = "/tmp/workspace/dm-nutrition-ppt/LowCost_Nutrition_DM.pptx"
buf = BytesIO()
prs.save(buf)
with open(out_path, "wb") as f:
f.write(buf.getvalue())
print(f"Saved: {out_path}")
python /tmp/workspace/dm-nutrition-ppt/create_ppt.py
LowCost Nutrition DM
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title Slide |
| 2 | What is Medical Nutrition Therapy (MNT)? |
| 3 | Affordable Carbohydrate Sources (Low GI table) |
| 4 | Cheap Protein & Vegetable Sources |
| 5 | Foods to AVOID in Diabetes |
| 6 | Sample Low-Cost 1-Day Meal Plan |
| 7 | Budget-Smart Practical Tips (8 tips) |
| 8 | Key Takeaways |