My attempt at logic factories