Hempz Triple Moisture Whipped Body Cream Herbal

Hempz Triple Moisture Whipped Body Cream Herbal

Efficacy75/100IrritancyHigh
Edit

Works for

1 of 1 advertised claim delivered

Moisturizing
Butyrospermum parkii butter, Imperata cylindrica root extract + 17 more
Good evidence
What the product description says
“Hempz Triple Moisture Herbal Whipped Body Creme provides all day moisture, softening even the driest skin.”
Source: Walgreens

This product can help improve hydration of the skin with the two types of ingredients.

The first type is called “humectants”:
these ingredients help attract water. When humectants are on the surface of the skin, they “pull in” the moisture from the outside environment, or from within deeper layers of the skin. The following ingredients in this product do the job: glycerin, imperata cylindrica root extract.

This product also contains ingredients called “occlusives”. They help reduce the speed with which our skin loses moisture to the outside environment. These ingredients also help soften the upper layer of the skin, so it feels less tight and nicer to the touch. The following ingredients in this product do the job: butyrospermum parkii butter, caprylic/capric triglyceride.

Butyrospermum parkii butterKey active· Emollient, OcclusiveEffect: HighA great moisturising ingredient that softens the skin and reduces water loss from its upper layer. It also can be helpful in protecting skin from free radicals~1.3–1.6%
Imperata cylindrica root extractKey active· HumectantEffect: HighA plat extract that might help neutralize free radicals in skin and attract water to its upper layer~0.25–0.5%
Cannabis sativa seed oilKey active· EmollientEffect: HighA plant oil that due to its high linoleic acid content can help strengthen skin's barrier function and soften its upper layer~0.7–1.05%
Helianthus annuus seed oilKey active· Emollient, OcclusiveEffect: HighA great emollient due to its high linoleic acid content. One of the most effective plant oils in helping skin hydration and repairing skin barrier function~0.55–0.8%
Sodium hyaluronateKey active· HumectantEffect: HighOne of the best moisturizing ingredients. Attracts water into the upper layer of the skin~0.15–0.3%
DimethiconeKey active· Emollient, OcclusiveEffect: HighA silicone that helps to reduce water loss from the surface of the skin. Can temporarily "fill in" lines and wrinkles, absorb oil, and create a nice product finish~2.1–2.6%
Caprylic/capric triglycerideKey active· Emollient, OcclusiveEffect: HighA good mix of fatty acids that forms a protective layer on the skin. Improves the shelf life of products. Derived from coconut and glycerin~5.9–7.2%
GlycerinKey active· HumectantEffect: HighOne of the best moisturizing ingredients. Naturally present in skin. It attracts water to the upper layer of the skin working as a humectant~4.1–5%
C12-15 alkyl benzoateKey active· EmollientEffect: MediumEnhances the product texture and makes it more spreadable. Helps reduce water loss from the outer layer of skin. Extands the shelf life by preventing bacteria growth~0.95–1.2%
Prunus amygdalus dulcis oilKey active· EmollientEffect: MediumAn emollient that softens the skin~0.6–0.9%
Olea europaea fruit oilKey active· EmollientEffect: MediumAn emollient that helps soften the skin but is not effective for restoring its barrier function. Might be helpful to calm down inflammation~0.4–0.65%
Cetearyl alcoholKey active· EmollientEffect: MediumA non-drying alcohol. Works as an emollient. Helps water and oil mix together and creates a nice product texture~2.4–2.9%
CyclopentasiloxaneKey active· EmollientEffect: MediumA silicone that helps improve the product texture and spreadability. Can absorb oil creating a short-term mattifying effect on the skin~0.25–0.5%
Peg-8· HumectantEffect: LowUsed to create a nice product consistency~0.1–0.2%
Dicaprylyl carbonate· EmollientEffect: LowHelps products spread more easily and works as an emollient to soften skin~1.7–2.1%
Tribehenin· EmollientEffect: LowUsed to create a thicker product consistency and soften the upper layer of the skin~0.25–0.5%
Pyrus malus fruit extractUnder-dosedEffect: MediumCan have some moisturizing properties due to its sugar content~0.25–0.5%
CyclohexasiloxaneEffect: Low, below effective doseA silicone that serves as an emollient. Helps create a nice non-greasy feels~0.25–0.5%
TocopherolEffect: Low, below effective dosePure form of vitamin E. Can help moisturise and protect the skin from free radicals. Often used to help stabilise other ingredients or the formula itself~0.2–0.35%
Anti-oxidation
Not advertised by the brand · Imperata cylindrica root extract, Butyrospermum parkii butter + 5 more
Moderate evidence

This product contains antioxidants (imperata cylindrica root extract) that might be able to help neutralize free radicals in skin to lessen the damage it gets from the UV light (sun). There is not enough evidence to confirm their effectiveness in skin though.

Imperata cylindrica root extractKey activeEffect: MediumA plat extract that might help neutralize free radicals in skin and attract water to its upper layer~0.25–0.5%
Butyrospermum parkii butterEffect: LowA great moisturising ingredient that softens the skin and reduces water loss from its upper layer. It also can be helpful in protecting skin from free radicals~1.3–1.6%
Prunus amygdalus dulcis oilEffect: LowAn emollient that softens the skin~0.6–0.9%
TocopherolUnder-dosedEffect: HighPure form of vitamin E. Can help moisturise and protect the skin from free radicals. Often used to help stabilise other ingredients or the formula itself~0.2–0.35%
Ascorbic acidUnder-dosedEffect: HighThe most well-researched antioxidant that works in skin. Helps neutralize free radicals supporting collagen production, helping to even out the skin tone and preventing early signs of aging~0.45–0.7%
Pyrus malus fruit extractEffect: Low, below effective doseCan have some moisturizing properties due to its sugar content~0.25–0.5%
Tocopheryl acetateEffect: Low, below effective doseA more stable but less bio-available form of vitamin E compared to Tocopherol. Might help moisturize and protect the skin from free radicals, but mostly used in low concentrations to stabilize other ingredients.~0.3–0.6%
Anti-aging
Not advertised by the brand · Retinyl palmitate, Butyrospermum parkii butter + 3 more
Moderate evidence

This product contains retinyl palmitate. This ingredient might be able to help reduce and prevent fine lines and wrinkles, improve skin elasticity and firmness, but there is not enough evidence that it actually works.

Retinyl palmitateKey activeEffect: MediumThree steps removed from the active form of vitamin A - retinoic acid. To have an effect in the skin, it first needs to be converted twice to become the retinoic acid. This means it is less potent than retinol, but could also be less irritating. Once converted to the retinoic acid in the skin, it helps against all signs of aging, improves skin cell turnover and helps fight blemishes and clogged pores. However, in many cosmetic formulations, it is used in a concentration that is too low to have the full effect~0.3–0.55%
Butyrospermum parkii butterEffect: LowA great moisturising ingredient that softens the skin and reduces water loss from its upper layer. It also can be helpful in protecting skin from free radicals~1.3–1.6%
Prunus amygdalus dulcis oilEffect: LowAn emollient that softens the skin~0.6–0.9%
Ascorbic acidUnder-dosedEffect: HighThe most well-researched antioxidant that works in skin. Helps neutralize free radicals supporting collagen production, helping to even out the skin tone and preventing early signs of aging~0.45–0.7%
TocopherolEffect: Low, below effective dosePure form of vitamin E. Can help moisturise and protect the skin from free radicals. Often used to help stabilise other ingredients or the formula itself~0.2–0.35%
Evens skin tone
Not advertised by the brand · Retinyl palmitate, Ascorbic acid
Moderate evidence

The following ingredient (ingredients) in this product might be helpful, but there is no evidence to confirm that it actually works: retinyl palmitate.

Retinyl palmitateKey activeEffect: MediumThree steps removed from the active form of vitamin A - retinoic acid. To have an effect in the skin, it first needs to be converted twice to become the retinoic acid. This means it is less potent than retinol, but could also be less irritating. Once converted to the retinoic acid in the skin, it helps against all signs of aging, improves skin cell turnover and helps fight blemishes and clogged pores. However, in many cosmetic formulations, it is used in a concentration that is too low to have the full effect~0.3–0.55%
Ascorbic acidUnder-dosedEffect: HighThe most well-researched antioxidant that works in skin. Helps neutralize free radicals supporting collagen production, helping to even out the skin tone and preventing early signs of aging~0.45–0.7%

Can it cause trouble?

Irritancy
8 strong irritants: Retinyl palmitate, Parfum + 6 more — patch-test recommended
High risk
We flagged 24 ingredients with irritancy potential. Severity depends on your sensitivity threshold; the table lists the worst offenders first.
IngredientFunctionIrritationEst. amount
Ascorbic acidThe most well-researched antioxidant that works in skin. Helps neutralize free radicals supporting collagen production, helping to even out the skin tone and preventing early signs of agingHigh~0.45–0.7%est.
Retinyl palmitateThree steps removed from the active form of vitamin A - retinoic acid. To have an effect in the skin, it first needs to be converted twice to become the retinoic acid. This means it is less potent than retinol, but could also be less irritating. Once converted to the retinoic acid in the skin, it helps against all signs of aging, improves skin cell turnover and helps fight blemishes and clogged pores. However, in many cosmetic formulations, it is used in a concentration that is too low to have the full effectHigh~0.3–0.55%est.
ParfumAn aromatic blend of unspecified and possibly irritating ingredientsHigh~0.2–0.4%est.
Benzyl benzoateFragrance with sweet balsamic smell. Help to preserve products and dissolve other ingredients. Could trigger allergic reactions and be irritatingHigh~0.2–0.4%est.
LimoneneA common frangrance that can easily irritate skin, especially if exposed to air, light or heatHigh~0.2–0.35%est.
LinaloolA fragrance. Can be irritatingHigh~0.2–0.35%est.
Amyl cinnamal—High~0.2–0.35%est.
Hexyl cinnamalA fragrance with jasmine smell. A likely irritantHigh~0.15–0.3%est.
Hydroxyisohexyl 3-cyclohexene carboxaldehydeA fragrance. Can be irritatingHigh~0.15–0.3%est.
Caprylic/capric triglycerideA good mix of fatty acids that forms a protective layer on the skin. Improves the shelf life of products. Derived from coconut and glycerinMedium~5.9–7.2%est.
Polysorbate 60Helps oil and water mix togetherMedium~1.4–1.8%est.
Cannabis sativa seed oilA plant oil that due to its high linoleic acid content can help strengthen skin's barrier function and soften its upper layerMedium~0.7–1.05%est.
Citric acidCan work as an exfoliant but is typically used to adjust the product pHMedium~0.4–0.65%est.
Olea europaea fruit oilAn emollient that helps soften the skin but is not effective for restoring its barrier function. Might be helpful to calm down inflammationMedium~0.4–0.65%est.
Tocopheryl acetateA more stable but less bio-available form of vitamin E compared to Tocopherol. Might help moisturize and protect the skin from free radicals, but mostly used in low concentrations to stabilize other ingredients.Medium~0.3–0.6%est.
Pyrus malus fruit extractCan have some moisturizing properties due to its sugar contentMedium~0.25–0.5%est.
Imperata cylindrica root extractA plat extract that might help neutralize free radicals in skin and attract water to its upper layerMedium~0.25–0.5%est.
Caprylhydroxamic acidA preservativeMedium~0.25–0.4%est.
MethylpropanediolHelps dissolve other ingredients in a formulationMedium~0.25–0.45%est.
Laureth-12Helps water and oil mix togetherMedium~0.25–0.45%est.
Sodium citrateHelps to control the skin's pH level. Maintains the skin's natural film of amino-lactic acids and oils. Helps to preserve productsMedium~0.15–0.3%est.
Potassium sorbateA preservativeMedium~0.15–0.3%est.
Peg-8Used to create a nice product consistencyMedium~0.1–0.2%est.
Ci 42090A colorant (dye)Medium~0.1–0.15%est.
Comedogenic
3 ingredients rated 2 or more on the 0–5 pore-clogging scale
3 flagged
These ingredients have a comedogenic rating of 2 or more on a 0–5 scale; the table shows each one's rating. In leave-on products they can clog pores in acne-prone skin.
IngredientFunctionRatingEst. amount
Butyrospermum parkii butterA great moisturising ingredient that softens the skin and reduces water loss from its upper layer. It also can be helpful in protecting skin from free radicals3/5~1.3–1.6%est.
Macrocystis pyrifera extract—3/5~0.25–0.45%est.
Cetearyl alcoholA non-drying alcohol. Works as an emollient. Helps water and oil mix together and creates a nice product texture2/5~2.4–2.9%est.
Edit

User reviews

Would you recommend?
No community reviews yet.

Be the first — your take helps the next person decide.

Write a review · ~30s

Ingredients

Filter by role to see what each ingredient is doing.

Water~45–55%
Formula
Irritation risk
Low

Plain old water

More about Water
Caprylic/capric triglyceride~5.9–7.2%
Key activeIrritant · medium
Irritation risk
Medium
Works for
Moisturizing

A good mix of fatty acids that forms a protective layer on the skin. Improves the shelf life of products. Derived from coconut and glycerin

More about Caprylic/capric triglyceride
Glycerin~4.1–5%
Key active
Irritation risk
Low
Works for
Moisturizing

One of the best moisturizing ingredients. Naturally present in skin. It attracts water to the upper layer of the skin working as a humectant

More about Glycerin
Propanediol~3.2–3.9%
Formula
Irritation risk
Low

Acts as a solvent for other ingredients. Speeds up the absorption of other ingredients into the skin

More about Propanediol
Cetearyl alcohol~2.4–2.9%
Key activeComedogenic 2/5
Irritation risk
Low
Comedogenicity
2/5
Works for
CleansingMoisturizing

A non-drying alcohol. Works as an emollient. Helps water and oil mix together and creates a nice product texture

More about Cetearyl alcohol
Dimethicone~2.1–2.6%
Key active
Irritation risk
Low
Works for
MoisturizingMattifying

A silicone that helps to reduce water loss from the surface of the skin. Can temporarily "fill in" lines and wrinkles, absorb oil, and create a nice product finish

More about Dimethicone
Dicaprylyl carbonate~1.7–2.1%
Formula
Irritation risk
Low
Works for
Moisturizing

Helps products spread more easily and works as an emollient to soften skin

More about Dicaprylyl carbonate
Polysorbate 60~1.4–1.8%
Irritant · medium
Irritation risk
Medium
Works for
Cleansing

Helps oil and water mix together

More about Polysorbate 60
Butyrospermum parkii butter~1.3–1.6%
Key activeComedogenic 3/5
Irritation risk
Low
Comedogenicity
3/5
Works for
MoisturizingAnti-oxidationAnti-aging

A great moisturising ingredient that softens the skin and reduces water loss from its upper layer. It also can be helpful in protecting skin from free radicals

More about Butyrospermum parkii butter
C12-15 alkyl benzoate~0.95–1.2%
Key active
Irritation risk
Low
Works for
Moisturizing

Enhances the product texture and makes it more spreadable. Helps reduce water loss from the outer layer of skin. Extands the shelf life by preventing bacteria growth

More about C12-15 alkyl benzoate
Cannabis sativa seed oil~0.7–1.05%
Key activeIrritant · medium
Irritation risk
Medium
Works for
Moisturizing

A plant oil that due to its high linoleic acid content can help strengthen skin's barrier function and soften its upper layer

More about Cannabis sativa seed oil
Prunus amygdalus dulcis oil~0.6–0.9%
Key active
Irritation risk
Low
Works for
MoisturizingAnti-oxidationAnti-aging

An emollient that softens the skin

More about Prunus amygdalus dulcis oil
Helianthus annuus seed oil~0.55–0.8%
Key active
Irritation risk
Low
Works for
Moisturizing

A great emollient due to its high linoleic acid content. One of the most effective plant oils in helping skin hydration and repairing skin barrier function

More about Helianthus annuus seed oil
Ascorbic acid~0.45–0.7%
Under-dosedIrritant · high
Irritation risk
High
Works for
Anti-oxidationEvens skin toneAnti-aging

The most well-researched antioxidant that works in skin. Helps neutralize free radicals supporting collagen production, helping to even out the skin tone and preventing early signs of aging

More about Ascorbic acid
Calodendrum capense nut oil~0.45–0.7%
Formula
Citric acid~0.4–0.65%
Irritant · medium
Irritation risk
Medium

Can work as an exfoliant but is typically used to adjust the product pH

More about Citric acid
Olea europaea fruit oil~0.4–0.65%
Key activeIrritant · medium
Irritation risk
Medium
Works for
Moisturizing

An emollient that helps soften the skin but is not effective for restoring its barrier function. Might be helpful to calm down inflammation

More about Olea europaea fruit oil
Retinyl palmitate~0.3–0.55%
Key activeIrritant · high
Irritation risk
High
Works for
Evens skin toneAnti-blemishAnti-agingExfoliation

Three steps removed from the active form of vitamin A - retinoic acid. To have an effect in the skin, it first needs to be converted twice to become the retinoic acid. This means it is less potent than retinol, but could also be less irritating. Once converted to the retinoic acid in the skin, it helps against all signs of aging, improves skin cell turnover and helps fight blemishes and clogged pores. However, in many cosmetic formulations, it is used in a concentration that is too low to have the full effect

More about Retinyl palmitate
Tocopheryl acetate~0.3–0.6%
Irritant · medium
Irritation risk
Medium
Works for
Anti-oxidation

A more stable but less bio-available form of vitamin E compared to Tocopherol. Might help moisturize and protect the skin from free radicals, but mostly used in low concentrations to stabilize other ingredients.

More about Tocopheryl acetate
Pyrus malus fruit extract~0.25–0.5%
Under-dosedIrritant · medium
Irritation risk
Medium
Works for
MoisturizingAnti-oxidation

Can have some moisturizing properties due to its sugar content

More about Pyrus malus fruit extract
Imperata cylindrica root extract~0.25–0.5%
Key activeIrritant · medium
Irritation risk
Medium
Works for
MoisturizingAnti-oxidationAnti-inflammatory

A plat extract that might help neutralize free radicals in skin and attract water to its upper layer

More about Imperata cylindrica root extract
Macrocystis pyrifera extract~0.25–0.45%
Comedogenic 3/5
Irritation risk
Low
Comedogenicity
3/5
More about Macrocystis pyrifera extract
Phenoxyethanol~0.25–0.45%
Formula
Irritation risk
Low

A preservative. It helps prevent bacterial growth in cosmetic products

More about Phenoxyethanol
Cyclopentasiloxane~0.25–0.5%
Key active
Irritation risk
Low
Works for
MattifyingMoisturizing

A silicone that helps improve the product texture and spreadability. Can absorb oil creating a short-term mattifying effect on the skin

More about Cyclopentasiloxane
Parfum~0.2–0.4%
Irritant · high
Irritation risk
High

An aromatic blend of unspecified and possibly irritating ingredients

More about Parfum
Tribehenin~0.25–0.5%
Formula
Irritation risk
Low
Works for
Moisturizing

Used to create a thicker product consistency and soften the upper layer of the skin

More about Tribehenin
Benzyl benzoate~0.2–0.4%
Irritant · high
Irritation risk
High

Fragrance with sweet balsamic smell. Help to preserve products and dissolve other ingredients. Could trigger allergic reactions and be irritating

More about Benzyl benzoate
Carbomer~0.25–0.45%
Formula
Irritation risk
Low
Works for
Cleansing

Helps create a thicker or gel-like product texture. It is not a surfactant but can be used in gentle cleansing formulations

More about Carbomer
Cyclohexasiloxane~0.25–0.5%
Formula
Irritation risk
Low
Works for
Moisturizing

A silicone that serves as an emollient. Helps create a nice non-greasy feels

More about Cyclohexasiloxane
Caprylhydroxamic acid~0.25–0.4%
Irritant · medium
Irritation risk
Medium

A preservative

More about Caprylhydroxamic acid
Methylpropanediol~0.25–0.45%
Irritant · medium
Irritation risk
Medium

Helps dissolve other ingredients in a formulation

More about Methylpropanediol
Aminomethyl propanol~0.25–0.45%
Formula
Irritation risk
Low

Used to adjust the pH in formulations

More about Aminomethyl propanol
Limonene~0.2–0.35%
Irritant · high
Irritation risk
High

A common frangrance that can easily irritate skin, especially if exposed to air, light or heat

More about Limonene
Laureth-12~0.25–0.45%
Irritant · medium
Irritation risk
Medium
Works for
Cleansing

Helps water and oil mix together

More about Laureth-12
Linalool~0.2–0.35%
Irritant · high
Irritation risk
High

A fragrance. Can be irritating

More about Linalool
Amyl cinnamal~0.2–0.35%
Irritant · high
Irritation risk
High
More about Amyl cinnamal
Hexyl cinnamal~0.15–0.3%
Irritant · high
Irritation risk
High

A fragrance with jasmine smell. A likely irritant

More about Hexyl cinnamal
Hydroxyisohexyl 3-cyclohexene carboxaldehyde~0.15–0.3%
Irritant · high
Irritation risk
High

A fragrance. Can be irritating

More about Hydroxyisohexyl 3-cyclohexene carboxaldehyde
Tocopherol~0.2–0.35%
Under-dosed
Irritation risk
Low
Works for
Anti-oxidationAnti-agingAnti-inflammatoryMoisturizing

Pure form of vitamin E. Can help moisturise and protect the skin from free radicals. Often used to help stabilise other ingredients or the formula itself

More about Tocopherol
Sodium hyaluronate~0.15–0.3%
Key active
Irritation risk
Low
Works for
Moisturizing

One of the best moisturizing ingredients. Attracts water into the upper layer of the skin

More about Sodium hyaluronate
Sodium citrate~0.15–0.3%
Irritant · medium
Irritation risk
Medium

Helps to control the skin's pH level. Maintains the skin's natural film of amino-lactic acids and oils. Helps to preserve products

More about Sodium citrate
Potassium sorbate~0.15–0.3%
Irritant · medium
Irritation risk
Medium

A preservative

More about Potassium sorbate
Ci 60730~0.15–0.25%
Formula
Irritation risk
Low
More about Ci 60730
Peg-8~0.1–0.2%
Irritant · medium
Irritation risk
Medium
Works for
Moisturizing

Used to create a nice product consistency

More about Peg-8
Ci 42090~0.1–0.15%
Irritant · medium
Irritation risk
Medium

A colorant (dye)

More about Ci 42090
Ingredient list view

Water, Caprylic/capric triglyceride, Glycerin, Propanediol, Cetearyl alcohol, Dimethicone, Dicaprylyl carbonate, Polysorbate 60, Butyrospermum parkii butter, C12-15 alkyl benzoate, Cannabis sativa seed oil, Prunus amygdalus dulcis oil, Helianthus annuus seed oil, Ascorbic acid, Calodendrum capense nut oil, Citric acid, Olea europaea fruit oil, Retinyl palmitate, Tocopheryl acetate, Pyrus malus fruit extract, Imperata cylindrica root extract, Macrocystis pyrifera extract, Phenoxyethanol, Cyclopentasiloxane, Parfum, Tribehenin, Benzyl benzoate, Carbomer, Cyclohexasiloxane, Caprylhydroxamic acid, Methylpropanediol, Aminomethyl propanol, Limonene, Laureth-12, Linalool, Amyl cinnamal, Hexyl cinnamal, Hydroxyisohexyl 3-cyclohexene carboxaldehyde, Tocopherol, Sodium hyaluronate, Sodium citrate, Potassium sorbate, Ci 60730, Peg-8, Ci 42090

Compare prices

Retailers ranked by price — lowest first.

Amazon USPrice as of 10/30/2026 06:12 GMT
$17.89
Buy

Affiliate links · prices updated regularly · As an Amazon Associate, WIMJ earns from qualifying purchases.

Worth comparing, line by line.

Match % combines shared ingredients, the first five ingredients, shared actives and hero ingredients, irritancy (lower counts in the alternative's favour), texture and body area. Only products in the same routine step are compared.

Side-by-side comparison of this product against its closest alternatives
HempzTriple Moisture Whipped Body Cream HerbalYOUR PRODUCTCeraVeSkin Renewing Vitamin C Eye CreamNATUREKINDWhitening Mega Vitamin CreamK republiqGlass Skin Finishing Glaze
Match—80%79%78%
Price$17.89$17.88$37.60+$19.71—
Shared key ingredients—6 of 124 of 127 of 12
Key difference—Ceramide ApNiacinamidePolyglutamic Acid
Irritancy High Medium Medium Low
Drying alcohol————
View product Shop Shop Shop
Cheaper alternatives? See how this stacks up against similar formulas.
We compare ingredient profiles across our catalog — pick the closest match for your budget.
Open dupe finder

Sources cited in this review

Every concentration estimate and effectiveness label is anchored to one of these 16 studies and safety reviews.

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
Hempz Triple Moisture Whipped Body Cream Herbal
HempzTriple Moisture Whipped Body Cream Herbal

Affiliate links · As an Amazon Associate, WIMJ earns from qualifying purchases.

As an Amazon Associate, WIMJ earns from qualifying purchases.