''' In this set of exercises, we will combine basic Boolean operators to define when certain biological events are allowed to take place. ''' ''' Exercise A: Cell cycle G1 checkpoint Define 3 variables - DNA_damaged, E2F_present, and not_touching - and assign Boolean values to them. The statement can_pass_g1 should be true if there is enough space, no DNA damage, and no E2F proteins. You can try to assign different values to the three variables and see how these affect the outcome (can_pass_g1). Use this as a guideline: DNA_damaged - true if damaged E2F_present - true if present not_touching - true if it is not overcrowded ''' # Your code here can_pass_g1 = # Your code here ''' Exercise B: Cell cycle G2-M checkpoint Define 2 variables - DNA_damaged and cyclinB_present - and assign Boolean values to them. The statement can_pass_g2m should read true if there is no DNA damage and if cyclinB is present. You can try to assign different values to the two variables and see how these affect the outcome (is the cell allowed to pass the cell cycle checkpoint). Use this as a guideline: DNA_damaged - true if damaged cyclinB_present - true if present ''' # Your code here can_pass_g2m = # Your code here ''' Exercise C: Enzyme production Define 2 Boolean variables - MetA_present and MetB_present - and assign value to them. Based on these variables, define make_enzyme. The cell should start to produce the enzyme if metabolite A or metabolite B is present, but not both. How does changing values of MetA_present or MetB_present affect the outcome? Use this as a guideline: MetA_present - true if present MetB_present - true if present ''' # Your code here make_enzyme = # Your code here ''' Exercise D: (Bonus) Cancer Rewrite Exercise A so that the behaviour would imitate that of cancer. ''' # Your code here