prologues:=2; beginfig(1); u:=0.025cm; pickup pencircle scaled 1; pair origin,top_left,bottom_right; origin=(320u,860u); top_left=(320u,1060u); bottom_right=(580u,860u); path vert_axis,horiz_axis,budget_set; vert_axis=origin--top_left; draw vert_axis; label.lft(btex Alice etex,top_left); label.bot(btex Bob etex,bottom_right); label.llft(btex $0$ etex,origin); horiz_axis= origin--bottom_right; draw horiz_axis; pair ulbl,brbl; ulbl=7/8[origin,top_left]; brbl=3/4[origin,bottom_right]; pair top_right,int,rbar; top_right=whatever[brbl,brbl+(ulbl-origin)]=whatever[ulbl,ulbl+(brbl-origin)]; int=(1/5)[origin,ulbl]; rbar=whatever[int,((7/8)[brbl,top_right])]=whatever[ulbl,top_right]; pickup pencircle scaled 2; draw int--rbar; pair intb,rb; intb=(1/4)[origin,brbl]; rb=whatever[intb,((15/16)[ulbl,top_right])]=whatever[int,rbar]; pickup pencircle scaled 1; draw intb--((15/16)[ulbl,top_right]); pair xee,xeb,xea; xee=whatever[int,rbar]=whatever[intb,((15/16)[ulbl,top_right])]; xeb=whatever[xee,xee+(origin-ulbl)]=whatever[origin,bottom_right]; xea=whatever[xee,xee+(origin-brbl)]=whatever[origin,top_left]; label.bot(btex $x^e_b$ etex,xeb); label.lft(btex $x^\ast(x^e_b)$ etex,xea); pair sxb,sxx,sxa,sxxb,sxxba; sxb=(1/2)[intb,xeb]; label.bot(btex $x_0$ etex,sxb); sxx=whatever[sxb,sxb+(ulbl-origin)]=whatever[int,xee]; draw sxb--sxx dashed evenly scaled 1; sxa=whatever[sxx,sxx+(origin-sxb)]=whatever[origin,ulbl]; sxxb=whatever[sxa,sxx]=whatever[intb,xee]; sxxba=whatever[sxxb,sxxb+(origin-ulbl)]=whatever[origin,xeb]; draw sxa--sxxb dashed evenly scaled 1; label.bot(btex $x_1$ etex, sxxba); label.lft(btex $x^\ast_a(x_0)$ etex,sxa); endfig; end