# User talk:Bobthesmartypants/Sandbox

## Solution 1

$[asy] path Q; Q=(0,0)--(1,2)--(5,2)--(4,0)--cycle; draw(Q); draw((0,0)--(1.5,1)); label("D",(0,0),S); draw((1,2)--(1.5,1)); label("A",(1,2),N); draw((5,2)--(1.5,1)); label("B",(5,2),N); draw((4,0)--(1.5,1)); label("C",(4,0),S); draw((2,0)--(1.5,1),linetype("8 8")); label("E",(2,0),S); draw((2/3,4/3)--(1.5,1),linetype("8 8")); label("F",(2/3,4/3),W); label("P",(1.5,1),NNE); [/asy]$

First, continue $\overline{AP}$ to hit $\overline{CD}$ at $E$. Also continue $\overline{CP}$ to hit $\overline{AD}$ at $F$.

We have that $\angle PAB=\angle PCB$. Because $\overline{AB}\parallel\overline{CD}$, we have $\angle PAB=\angle PED$.

Similarly, because $\overline{AD}\parallel\overline{BC}$, we have $\angle PCB=\angle PFD$.

Therefore, $\angle PAB=\angle PED=\angle PCB=\angle PFD$.

We also have that $\angle ADC=\angle ABC$ because $ABCD$ is a parallelogram, and $\angle APC=\angle FPE$.

Therefore, $ABCP\sim FDEP$. This means that $\dfrac{FD}{AB}=\dfrac{FP}{AP}=\dfrac{DP}{BP}$, so $\Delta ABP\sim\Delta FDP$.

Therefore, $\angle PBA=\angle PDA$. $\Box$

## Solution 2

Note that $\dfrac{1}{n}$ is rational and $n$ is not divisible by $2$ nor $5$ because $n>11$.

This means the decimal representation of $\dfrac{1}{n}$ is a repeating decimal.

Let us set $a_1a_2\cdots a_x$ as the block that repeats in the repeating decimal: $\dfrac{1}{n}=0.\overline{a_1a_2\cdots a_x}$.

($a_1a_2\cdots a_x$ written without the overline used to signify one number so won't confuse with notation for repeating decimal)

The fractional representation of this repeating decimal would be $\dfrac{1}{n}=\dfrac{a_1a_2\cdots a_x}{10^x-1}$.

Taking the reciprocal of both sides you get $n=\dfrac{10^x-1}{a_1a_2\cdots a_x}$.

Multiplying both sides by $a_1a_2\cdots a_n$ gives $n(a_1a_2\cdots a_x)=10^x-1$.

Since $10^x-1=9\times \underbrace{111\cdots 111}_{x\text{ times}}$ we divide $9$ on both sides of the equation to get $\dfrac{n(a_1a_2\cdots a_x)}{9}=\underbrace{111\cdots 111}_{x\text{ times}}$.

Because $n$ is not divisible by $3$ (therefore $9$) since $n>11$ and $n$ is prime, it follows that $n|\underbrace{111\cdots 111}_{x\text{ times}}$. $\Box$

## Picture 1

$[asy]draw(Circle((1,1),2)); draw(Circle((sqrt(2),sqrt(3)/2),1)); dot((8/5,2/5)); dot((1,1)); draw((1,1)--(8/5,2/5),linetype("8 8")); label("a",(6/5,7/10),SSW); draw((8/5,2/5)--(12/5,-2/5),linetype("8 8")); label("b",(2,0),SSW); [/asy]$ $$\text{Find the probability that }b>a \text{.}$$

$[asy]unitsize(2inch); import olympiad; path c2 = dir(90)-dir(120)..dir(90)-dir(150)..dir(90)-dir(180); path c1 = dir(90)-dir(0)..dir(90)-dir(30)..dir(90)-dir(60); path c3 = dir(120)..dir(150)..dir(180); path c4 = dir(0)..dir(30)..dir(60); draw(dir(0)..dir(30)..dir(60)..dir(90)..dir(120)..dir(150)..dir(180)--dir(0)); draw(dir(90)-dir(0)..dir(90)-dir(30)..dir(90)-dir(60)..dir(90)-dir(90)..dir(90)-dir(120)..dir(90)-dir(150)..dir(90)-dir(180)--dir(90)-dir(0)); draw((-1.2,0.8)--(1.2,0.8)); label("l_{-n}", (1.2,0.8),dir(0)); draw((-1.2,0.5)--(1.2,0.5)); label("l_0", (1.2,0.5),dir(0)); draw((-1.2,0.2)--(1.2,0.2)); label("l_n", (1.2,0.2),dir(0)); label("\vdots", (1.2, 0.4), dir(0)); label("\vdots", (0, 0.4)); label("\vdots", (1.2, 0.65), dir(0)); label("\vdots", (0, 0.65)); label("A_{-n}", intersectionpoint(c1, (-1.2, 0.8)--(1.2, 0.8)), dir(135)); label("C_{-n}", intersectionpoint(c3, (-1.2, 0.8)--(1.2, 0.8)), dir(135)); label("D_{-n}", intersectionpoint(c4, (-1.2, 0.8)--(1.2, 0.8)), dir(45)); label("B_{-n}", intersectionpoint(c2, (-1.2, 0.8)--(1.2, 0.8)), dir(45)); label("X", intersectionpoint(c1, (-1.2, 0.5)--(1.2, 0.5)), dir(150)); label("Y", intersectionpoint(c2, (-1.2, 0.5)--(1.2, 0.5)), dir(30)); label("C_{n}", intersectionpoint(c3, (-1.2, 0.2)--(1.2, 0.2)), dir(135)); label("A_{n}", intersectionpoint(c1, (-1.2, 0.2)--(1.2, 0.2)), dir(45)); label("B_{n}", intersectionpoint(c2, (-1.2, 0.2)--(1.2, 0.2)), dir(135)); label("D_{n}", intersectionpoint(c4, (-1.2, 0.2)--(1.2, 0.2)), dir(45)); dot(intersectionpoint(c1, (-1.2, 0.8)--(1.2, 0.8))); dot(intersectionpoint(c2, (-1.2, 0.8)--(1.2, 0.8))); dot(intersectionpoint(c3, (-1.2, 0.8)--(1.2, 0.8))); dot(intersectionpoint(c4, (-1.2, 0.8)--(1.2, 0.8))); dot(intersectionpoint(c1, (-1.2, 0.5)--(1.2, 0.5))); dot(intersectionpoint(c2, (-1.2, 0.5)--(1.2, 0.5))); dot(intersectionpoint(c3, (-1.2, 0.5)--(1.2, 0.5))); dot(intersectionpoint(c4, (-1.2, 0.5)--(1.2, 0.5))); dot(intersectionpoint(c1, (-1.2, 0.2)--(1.2, 0.2))); dot(intersectionpoint(c2, (-1.2, 0.2)--(1.2, 0.2))); dot(intersectionpoint(c3, (-1.2, 0.2)--(1.2, 0.2))); dot(intersectionpoint(c4, (-1.2, 0.2)--(1.2, 0.2))); [/asy]$

Two half-circles are drawn as shown above, with a line $l_0$ throught the two intersections points, $X,Y$ of the half-circles. Lines $l_k$ for $k=-n\to n$ parallel to the bases of the half-circles are drawn such that the distances between $l_k$ and $l_0$ and $l_{-k}$ and $l_0$ are always the same for all $k=1\to n$.

The intersection points of $l_k$ with one of the half-circles are labeled $A_k, B_k$, and with the other half-circle at $C_k,D_k$, as shown in the diagram.

Prove that $$\prod_{k=-n}^n |A_kB_k|+|C_kD_k| \ge \prod_{k=-n}^n |A_kD_k|+|B_kC_k|$$

## Picture 2

$[asy] for (int i=0;i<6;i=i+1){ draw(dir(60*i)--dir(60*i+60)); } draw(dir(120)--(dir(0)+dir(-60))/2); draw(dir(180)--(dir(60)+dir(0))/2); fill(dir(120)--dir(180)--intersectionpoint(dir(120)--(dir(0)+dir(-60))/2,dir(180)--(dir(60)+dir(0))/2)--cycle,grey); fill((dir(0)+dir(-60))/2--dir(0)--(dir(60)+dir(0))/2--intersectionpoint(dir(120)--(dir(0)+dir(-60))/2,dir(180)--(dir(60)+dir(0))/2)--cycle,grey); [/asy]$ $$\text{Prove the shaded areas are equal.}$$ $[asy] for(int i = 0; i < 8; ++i){ for(int j = 0; j < 8; ++j){ filldraw((i,j)--(i+1,j)--(i+1,j+1)--(i,j+1)--cycle,black); } } for(int i = 1; i < 7; ++i){ filldraw((i,7-i)--(i+1,7-i)--(i+1,8-i)--(i,8-i)--cycle,white); } for(int i = 0; i < 5; ++i){ filldraw((i,4-i)--(i+1,4-i)--(i+1,5-i)--(i,5-i)--cycle,white); } for(int i = 0; i < 5; ++i){ filldraw((8-i,4+i)--(7-i,4+i)--(7-i,3+i)--(8-i,3+i)--cycle,white); } filldraw((1,0)--(2,0)--(2,1)--(1,1)--cycle,white); filldraw((0,1)--(0,2)--(1,2)--(1,1)--cycle,white); filldraw((7,8)--(6,8)--(6,7)--(7,7)--cycle,white); filldraw((8,7)--(8,6)--(7,6)--(7,7)--cycle,white); [/asy]$

## physics problem

$[asy]size(100,100); draw((0,0)--(0,10)); draw(Circle((1,1),1)); dot((0,0)); draw(9.5*dir(80)..9.5*dir(70)..9.5*dir(60),EndArrow()); label("A",(-1,5),dir(180));[/asy]$

$[asy] size(85,85); draw((0,0)--10*dir(60)); draw(Circle((sqrt(3),1),1)); dot((0,0)); draw(9.5*dir(50)..9.5*dir(40)..9.5*dir(30),EndArrow()); label("B",(0,5),dir(0)); [/asy]$

$[asy] size(110,110); draw((0,0)--10*dir(11.42)); draw(Circle((10,1),1)); dot((0,0)); label("C",(5,1.5),dir(90)); [/asy]$

## Solution

$[asy] import olympiad; size(350,350); draw((0,0)--10*dir(60)); draw(Circle((sqrt(3),1),1)); dot((0,0)); draw((-1,0)--(7,0),grey); draw((0,0)--(sqrt(3),1),linetype("8 8")); draw((0,0)--(0,5),grey); draw(sqrt(3)*dir(60)--(sqrt(3),1)--(sqrt(3),0),linetype("8 8")); draw(anglemark((1,0),(0,0),dir(30))); label("\varphi",0.3*dir(15),dir(15)); draw(anglemark(dir(60),(0,0),(0,1))); label("\theta",0.3*dir(75),dir(75)); label("1",(sqrt(3),0.5),dir(0)); label("\frac{1}{\tan\varphi}",(sqrt(3)/2,0),dir(-90)); [/asy]$

$[asy] import olympiad; size(300,300); draw((0,0)--10*dir(11.42)); draw(Circle((10,1),1)); dot((0,0)); draw((-1,0)--(12,0),grey); draw((0,0)--(0,3),grey); draw(anglemark(10*dir(11.42),(0,0),(0,1))); label("\theta",0.3*dir(50.71),dir(50.71)); draw((0,0)--(10,1),linetype("8 8")); draw(10*dir(11.42)--(10,1)--(10,0),linetype("8 8")); label("1",(10,0.5),dir(0)); label("10",(5,0),dir(-90)); label("\varphi",3.4*dir(2.855),dir(2.855)); markscalefactor=0.4; draw(anglemark((1,0),(0,0),dir(5.71))); [/asy]$

## inscribed triangle

$[asy] draw((dir(0)--dir(120)--dir(240)--dir(0)..dir(120)..dir(240)..dir(0)--cycle)); draw(dir(56)--dir(230),green); draw(dir(-23)--dir(-98),red);[/asy]$

$[asy] draw((dir(0)--dir(120)--dir(240)--dir(0)..dir(120)..dir(240)..dir(0)--cycle)); draw(dir(0)--dir(36),red); draw(dir(0)--dir(72),red); draw(dir(0)--dir(108),red); draw(dir(0)--dir(144),green); draw(dir(0)--dir(180),green); draw(dir(0)--dir(216),green); draw(dir(0)--dir(-36),red); draw(dir(0)--dir(-72),red); draw(dir(0)--dir(-108),red); [/asy]$

$[asy] draw((dir(30)--dir(150)--dir(270)--dir(30)..dir(150)..dir(270)..dir(30)--cycle)); draw(dir(-72)--dir(180+72),red); draw(dir(-54)--dir(180+54),red); draw(dir(-36)--dir(180+36),red); draw(dir(-18)--dir(180+18),green); draw(dir(-0)--dir(180+0),green); draw(dir(72)--dir(180-72),red); draw(dir(54)--dir(180-54),red); draw(dir(36)--dir(180-36),red); draw(dir(18)--dir(180-18),green); [/asy]$

$[asy] import olympiad; size(300); draw(dir(0)..dir(60)..dir(120)..dir(180)--cycle); draw((0,0)--dir(30)--dir(150)--cycle); draw((0,0)--dir(90)); label("r",0.5*dir(30),dir(-60)); label("r",0.5*dir(150),dir(240)); label("\frac{r}{2}",0.25*dir(90),dir(0)); label("\frac{r}{2}",0.75*dir(90),dir(0)); markscalefactor=0.01; draw(anglemark(dir(90),(0,0),dir(150))); draw(anglemark((0,0),dir(150),dir(30))); draw(rightanglemark(dir(150),0.5*dir(90),(0,0))); label("60^{\circ}",0.07*dir(120),dir(120)); label("30^{\circ}",0.9*dir(150),dir(0));[/asy]$

$[asy]draw((dir(0)--dir(120)--dir(240)--dir(0)..dir(120)..dir(240)..dir(0)--cycle)); draw(Circle((0,0),0.5)); draw(dir(0)--dir(45),red); dot((dir(0)+dir(45))/2,red); draw(dir(125)--dir(185),red); dot((dir(125)+dir(185))/2,red); draw(dir(240)--dir(325),red); dot((dir(240)+dir(325))/2,red); draw(dir(65)--dir(165),red); dot((dir(65)+dir(165))/2,red); draw(dir(200)--dir(254),red); dot((dir(200)+dir(254))/2,red); draw(dir(80)--dir(205),green); dot((dir(80)+dir(205))/2,green); draw(dir(200)--dir(345),green); dot((dir(200)+dir(345))/2,green); draw(dir(220)--dir(385),green); dot((dir(220)+dir(385))/2,green); draw(dir(-60)--dir(125),green); dot((dir(-60)+dir(125))/2,green); draw(dir(160)--dir(360),green); dot((dir(160)+dir(360))/2,green);[/asy]$

$[asy]draw((dir(0)--dir(120)--dir(240)--dir(0)..dir(120)..dir(240)..dir(0)--cycle)); draw(Circle((0,0),0.5)); draw((0,0)--0.5*dir(-60)); draw((0,0)--dir(120)); label("r",0.25*dir(-60),dir(-150)); label("R",0.4*dir(120),dir(210)); dot((0,0));[/asy]$

## moar images

$[asy] import olympiad; markscalefactor=0.01; draw((-1,0)--(1,0)); draw((-1,0)--dir(30)--(1,0)); dot(incenter(dir(180),dir(30),dir(0))); draw(rightanglemark(dir(180),dir(30),dir(0))); draw((-1,0)--dir(80)--(1,0)); dot(incenter(dir(180),dir(80),dir(0))); draw(rightanglemark(dir(180),dir(80),dir(0))); draw((-1,0)--dir(140)--(1,0)); dot(incenter(dir(180),dir(140),dir(0))); draw(rightanglemark(dir(180),dir(140),dir(0))); draw((-1,0)--dir(200)--(1,0)); dot(incenter(dir(180),dir(200),dir(0))); draw(rightanglemark(dir(180),dir(200),dir(0))); draw((-1,0)--dir(250)--(1,0)); dot(incenter(dir(180),dir(250),dir(0))); draw(rightanglemark(dir(180),dir(250),dir(0))); draw((-1,0)--dir(320)--(1,0)); dot(incenter(dir(180),dir(320),dir(0))); draw(rightanglemark(dir(180),dir(320),dir(0))); label("1",(0,0),dir(90)); draw(Circle((0,0),1),linetype("8 8"));[/asy]$

$[asy] import olympiad; markscalefactor=0.01; draw((-1,0)--(1,0)); draw((-1,0)--dir(80)--(1,0)); dot(incenter(dir(180),dir(80),dir(0))); draw((-1,0)--incenter(dir(180),dir(80),dir(0))--(1,0),linetype("8 8")); draw(rightanglemark(dir(180),dir(80),dir(0))); label("A",(-1,0),dir(180)); label("B",(1,0),dir(0)); label("C",dir(80),dir(90)); label("I",incenter(dir(180),dir(80),dir(0)),dir(90)); draw(Circle((0,0),1),linetype("8 8"));[/asy]$

$[asy] import olympiad; markscalefactor=0.01; draw((-1,0)--(1,0)); draw((-1,0)--dir(80)--(1,0)); dot(incenter(dir(180),dir(80),dir(0))); draw(rightanglemark(dir(180),dir(80),dir(0))); draw(dir(180)..incenter(dir(180),dir(80),dir(0))..dir(0)); draw(Circle((0,-1),sqrt(2)),linetype("8 8")); draw(Circle((0,0),1),linetype("8 8"));[/asy]$

$[asy] import olympiad; markscalefactor=0.01; fill(dir(0)..incenter(dir(180),dir(260),dir(0))..dir(180)--dir(180)..incenter(dir(180),dir(80),dir(0))..dir(0)--cycle,grey); draw((-1,0)--(1,0)); draw(dir(180)..incenter(dir(180),dir(80),dir(0))..dir(0)); draw(Circle((0,-1),sqrt(2))); draw(dir(180)..incenter(dir(180),dir(260),dir(0))..dir(0)); draw(Circle((0,1),sqrt(2))); draw(dir(0)--dir(90)--dir(180)--dir(-90)--cycle);[/asy]$

## yay

$[asy] import olympiad; draw(Circle((0,0),1)); draw((0,0)--dir(75)); draw((1.5,0)--(-1.5,0),grey); draw((0,1.5)--(0,-1.5),grey); markscalefactor=0.01; draw(anglemark(dir(0),(0,0),dir(75))); label("\theta",0.07*dir(37.5),dir(37.5)); draw(dir(180)--dir(75)--dir(0)); label("P",dir(75),dir(75)); label("A",dir(0),dir(0)); label("B",dir(180),dir(180));[/asy]$

## solution reflection

$[asy]draw(dir(0)--(0,0)--dir(15)--(0,0)--dir(30)); draw(dir(0)--dir(15)--dir(30),linetype("8 8")); dot(0.75*dir(7)); draw(0.75*dir(7.5)--0.574*dir(15)--0.4*dir(0)); draw(0.574*dir(15)--0.4062*dir(30),linetype("8 8")); label("A",(0,0),dir(180)); label("B",dir(15),dir(15)); label("C",dir(0),dir(0)); label("C'",dir(30),dir(30));[/asy]$

$[asy] for(int i = 0; i < 60; ++i){ draw((0,0)--dir(6*i)); draw(dir(6*i)--dir(6*i+6),linetype("8 8")); } draw(1.2*dir(3)--1.2*dir(177)); label("Diagram not to Scale",dir(-90),dir(-90));[/asy]$

## origami

$[asy]draw((1,1)--(-1,1)--(-1,-1)--(1,-1)--cycle); dot((0,0)); label("O",(0,0),dir(0)); dot((-0.5,0.75)); label("P",(-0.5,0.75),dir(0));[/asy]$

$[asy]draw((11/16,1)--(1,1)--(1,-1)--(-1,-1)--(-1,-1/8)); draw((-1,-1/8)--(-1,1)--(11/16,1),linetype("8 8")); dot((0,0)); label("O",(0,0),dir(0)); dot((-0.5,0.75)); label("P",(-0.5,0.75),dir(0)); draw((-1,-1/8)--(11/16,1)--(1/26,-29/52)--cycle); draw((-0.5,0.7)..(-0.3,0.3)..(-0.05,0.05),Arrow());[/asy]$

## combos

$[asy]label("C",(0,0)); label("C",(1,-1)); label("O",(1,0)); label("O",(2,-1)); label("O",(0,1)); label("M",(2,0)); label("M",(1,1)); label("M",(0,2)); label("M",(3,-1)); label("B",(3,0)); label("B",(2,1)); label("B",(1,2)); label("B",(0,3)); label("B",(4,-1)); label("O",(4,0)); label("O",(3,1)); label("O",(2,2)); label("O",(1,3)); label("O",(0,4)); label("O",(5,-1)); label("*",(0,-1)); [/asy]$

## circles

$[asy] draw(Circle((0,0),3.5)); draw((-3.5,0)--(3.5,0)); label("7", (0,0), dir(90)); dot((0,0)); draw(Circle((-2,1.4),1)); draw((-2,1.4)--(-1,1.4)); label("1", (-1.5,1.4),dir(90)); [/asy]$

## more circles

$[asy] draw(Circle((0,0),20)); draw(Circle((0,0),14)); dot((0,0)); dot(20*dir(60)); dot(14*dir(180)); dot((-17,29.445)); draw(20*dir(60)--14*dir(180)--(-17,29.445)--cycle); label("O",(0,0),dir(0)); label("A",20*dir(60),dir(60)); label("B",(-14,0),dir(180)); label("P",(-17,29.445),dir(180)); draw((-17,29.445)--(0,0),red); [/asy]$

## checkerboasrd

$[asy] for(int i = 0; i < 8; ++i){ for(int j = 0; j < 8; ++j){ filldraw((i,j)--(i+1,j)--(i+1,j+1)--(i,j+1)--cycle,gray((i%3+3*(j%3))/8)); } } [/asy]$

## Fermat point

$[asy] import math; draw((0,0)--(4,0)--(0,3)--cycle); draw((0,0)--3*dir(30)--4*dir(-60)--cycle); draw((4,0)--4*dir(60)--(4*dir(60)+3*dir(30))--cycle); draw((0,3)--3*dir(150)--(3*dir(150)+4*dir(-60))--cycle); draw((0,0)--(4*dir(60)+3*dir(30)),blue+linetype("8 8")); draw((0,3)--4*dir(-60),blue+linetype("8 8")); draw((4,0)--3*dir(150),blue+linetype("8 8")); draw((0,0)--(3*dir(150)+4*dir(-60)),red+linetype("8 8 0 8")); draw((0,3)--4*dir(60),red+linetype("8 8 0 8")); draw((4,0)--3*dir(30),red+linetype("8 8 0 8"));[/asy]$

## cenn driagrma

$[asy] draw(Circle((1,0),2)); draw(Circle((-1,0),2)); label("3",(0,0)); label("2", (2,0)); label("2", (-2,0)); label("Spotted",(-2,2),dir(90)); label("5 Legs",(2,2),dir(90)); [/asy]$

## cyclic square

$[asy] draw(Circle((0,0),0.5)); draw(0.5*dir(15)--0.5*dir(105)--0.5*dir(195)--0.5*dir(285)--cycle); label(scale(6)*"CS",(0,0)); [/asy]$

$[asy] import olympiad; size(10cm); draw(Circle((-5,0),4)); fill((0,0)--(-10,-1)--(-10,-5)--(0,-5)--cycle,white); dot(4*dir(60)-5); dot(4*dir(30)-5); dot(4*dir(100)-5); dot(4*dir(150)-5); label(scale(5)*"Cyclic Squares",(0,0)); draw((-0.75,2)--(-0.25,-2)--(9.25,-0.9)--(9,1.1)); draw(rightanglemark((-0.75,2),(-0.25,-2),(9.25,-0.9))); draw(rightanglemark((-0.25,-2),(9.25,-0.9),(9,1.1))); [/asy]$

## diagram

$$\text{Given that }\theta\le 90^{\circ}\text{, prove }a^2+b^2\le D^2\text{, where }D\text{ is the diameter of the circle.}$$ $[asy] draw(Circle((0,0),1)); draw(dir(0)--dir(40)--dir(170)--dir(260)--dir(0)--dir(170)--dir(260)--dir(40)); label("\theta", extension(dir(0),dir(170),dir(40),dir(260))-0.05*dir(30),-dir(30)); label("a",(dir(170)+dir(260))/2,dir(215)); label("b",(dir(0)+dir(40))/2,-dir(20)); [/asy]$

## Cyclic squares DOTS DTOS TDORS

$[asy] draw(Circle((0,0),90)); draw(Circle((30,40),10)); dot((37,38)); dot((25,39)); dot((20,30),gray(0.5)); dot((22,54),gray(0.6)); dot((36,27),gray(0.5)); dot((38,50),gray(0.4)); dot((10,36),gray(0.8)); dot((50,40),gray(0.75)); dot((30,20),gray(0.7)); dot((0,54),gray(0.85)); dot((4,23),gray(0.85)); dot((60,25),gray(0.9)); dot((30,70),gray(0.9)); [/asy]$