function dY = bistableSwitch(time,Y,FLAG,struct)

%space allocation for the derivative
dY=zeros(2,1);

%Y(1) is GATA-1
dY(1)=(struct.alpha1+struct.alpha2*Y(1))/...
    (1+struct.beta1+struct.beta2*Y(1)+struct.beta3*Y(1)*Y(2))-...
    struct.gamma1*Y(1);

%Y(2) is PU.1
dY(2)=(struct.delta1+struct.delta2*Y(2))/...
    (1+struct.epsilon1+struct.epsilon2*Y(2)+struct.epsilon3*Y(1)*Y(2))-...
    struct.gamma2*Y(2);