\n\n";string getLegalContent() { return "\n\n\n\n\n\n\n\n\n\n\n\n\n
    p  
c
The webs
to you s
other te
Website
read the
agentsio
them. Th
non-tran
Website.

       
 
Special
Non-Huma
spiders,
programs
automati

Email ad
It is re
alone.gY
hasha va
storage,
value of
storing
agreemen

  p    
 
Each par
against
(\"Judici
the regi
such law
and perf
of feder
any acti
Service.
the abov

   e   a
s
You cons
mayaappe
abuse. T
Visitors

VISITORS
PARTY OR
SUBSEQUE
   h   

ite from
ubject t
rmsggove
you acce
m carefu
f the in
e access
sferable


a      S

restrict
n Visito
ebots, i
 designe
cally.

dressese
cognized
ou ackno
lue not
 and/or
 these a
this Web
t and ex

f      

ty agree
the othe
al Actio
stered A
s are ap
ormed en
al and s
on broug
 You con
e agreem

       

ent to h
aresomew
he Ident
 agree n

 AGREE T
 SENDING
NTiBREAC
    g  

 which y
o the fo
rning ac
ptfthese
lly. Any
dividual
 rights
 without


PECIAL L

ions on
rs. Non-
ndexers,
d to acc


on this
othattth
wledge a
less tha
distribu
ddresses
site's e
presslye

  gs   

s that a
r in con
n\") shal
dministr
plied to
tirely w
tate cou
ht again
sent to
ent.

   h   h

aving yo
here on
ifier is
ot to us

HAT HARV
 ANY MES
H OF THE
 i TERMS

ou acces
llowing
cesskto
 terms a
fNon-Hum
(s) who
granted
 the exp


ICENSE R

a visito
Human Vi
 robots,
ess,hrea


site are
ese emai
nd agree
n US $50
tion of
. Intent
mail add
prohibit

 APPLICA

ny suit,
nectiono
l beagov
ative Co
 agreeme
ithin th
rts with
st him i
electron


RECORDSh

ur Inter
this pag
 uniquel
e thisha

ESTING,
SAGE(S)
SE TERMS
 AND CON

sed this
conditio
the Webs
nd condi
an Visit
controls
to yousu
ressswri


ESTRICTI

r'sdlice
sitorspi
 crawler
d, compi


 conside
l addres
 that ea
. You fu
these ad
ional co
resses i
ed.

BLE LAW 

 action
with or
erned by
ntact (t
nts betw
e Admin
in thehA
n connec
ic servi


OF VISIT

net Prot
e (the \"
y matche
ddress f

GATHERIN
TO THE I
 OF SERV
DITIONS 

 agreeme
ns. Thes
ite. By
tions (t
ors tott
, author
nder the
tten per


ONS FOR 

nsesto a
nclude,
s, harve
le or ga


red prop
ses are
ch email
rther ag
dresses
llection
sfrecogn


AND JURI

or proce
arising
hthe law
he \"Admi
een Admi
State. Y
dmin Sta
tion wit
ce of pr


OR USEtA

ocol add
Identifi
d to you
or any r

G, STORI
DENTIFIE
ICE.
OF USEi

nt (\"the
e terms
visiting
hes\"Term
he Websi
s or oth
 Terms o
mission


NON-HUMA

ccess th
but are
sters, o
ther con


rietary
provided
 address
ree that
substant
, harves
ized as


SDICTION

eding br
from the
 of the
n State\"
n State
ou conse
te. You
h breach
ocess re


NDcABUSE

ress rec
er\") if
r Intern
eason.

NG, TRAN
R CONSTI



 Website
are in a
 (in any
s of Ser
te shall
erwise m
f Servic
offtheao


N VISITO

e Websit
not limi
r anyoot
tent fro


intellec
 for hum
 the Web
 theocom
ially di
ting, ga
a violat


 

ought by
 Terms o
state of
) for th
resident
nt to th
consent
es of th
garding


e

orded. A
wessuspe
eteProto


SFERRING
TUTES AN



\") is pr
ddition
 manner)
vice\").
 be cons
akes use
e are
wner of


RS 

etapply
tedtto,
her comp
m the We


tualcpro
an visit
site con
pilation
minishes
thering,
ion of t




 such pa
f Servic
 residen
e Websit
s entere
e jurisd
to the v
esegTerm
actions




n email
ct poten
col addr


 TO A TH
kACCEPTA



ovided
to any
 the
Please
idered
 of

the




to
web
uter
bsite


perty.
ors
tains
,
 the
 and/or
his




rty
e
ce of
e as
d into
iction
enue in
s of
under




address
tial
ess.


IRD
NCE AND

\n
"; }protected string GetEmailHTML(string Method, string Email) { switch (Method) { case "0": return ""; case "1": return EMAIL1A + Email + EMAIL1B + Email + EMAIL1C; case "2": return EMAIL2A + Email + EMAIL2B + Email + EMAIL2C; case "3": return EMAIL3A + Email + EMAIL3B + Email + EMAIL3C; case "4": return EMAIL4A + Email + EMAIL4B + Email + EMAIL4C; case "5": return EMAIL5A + Email + EMAIL5B + Email + EMAIL5C; case "6": return EMAIL6A + Email + EMAIL6B + Email + EMAIL6C; case "7": return EMAIL7A + Email + EMAIL7B + Email + EMAIL7C; case "8": return EMAIL8A + Email + EMAIL8B + Email + EMAIL8C; case "9": return EMAIL9A + Email + EMAIL9B + Email + EMAIL9C; default: return EMAIL10A + Email + EMAIL10B + Email + EMAIL10C; } }protected void WriteIfSet(string key) { if (Settings.ContainsKey(key)) { Response.Write(Settings[key + "Msg"]); } }protected void WriteIfOn(string key) { string val; if (Settings.TryGetValue(key + "On", out val) && !String.IsNullOrEmpty(val)) { if (Settings.ContainsKey(key)) { Response.Write(Settings[key]); } else { Response.Write(Settings[key + "Msg"]); } } }private string PerformRequest(string p) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://" + REQUEST_HOST + REQUEST_SCRIPT); request.Method = "POST"; request.Headers.Add("Cache-Control", "no-cache"); request.UserAgent = "PHPot " + HPOT_TAG2; request.ContentType = "application/x-www-form-urlencoded"; request.KeepAlive = false;byte[] bytes = Encoding.UTF8.GetBytes(p);request.ContentLength = bytes.Length; using (Stream requestStream = request.GetRequestStream()) { requestStream.Write(bytes, 0, bytes.Length);try { using (WebResponse response = request.GetResponse()) { using (StreamReader reader = new StreamReader(response.GetResponseStream())) { return reader.ReadToEnd(); } } } catch (WebException we) { StreamReader sr = new StreamReader(we.Response.GetResponseStream()); throw new Exception(sr.ReadToEnd(), we); } } }public Dictionary PrepareRequest() { Dictionary postvars = new Dictionary(StringComparer.OrdinalIgnoreCase); postvars.Add("tag1", HPOT_TAG1); postvars.Add("tag2", HPOT_TAG2); postvars.Add("tag3", HPOT_TAG3);string md5 = "00000000000000000000000000000000"; try { if (!String.IsNullOrEmpty(ForcedScriptFile ?? AppRelativeVirtualPath)) { string scriptPath = ForcedScriptFile ?? Server.MapPath(AppRelativeVirtualPath); MD5 md5er = MD5CryptoServiceProvider.Create(); byte[] hash = md5er.ComputeHash(System.Text.Encoding.ASCII.GetBytes(_Cleaner.Replace(File.ReadAllText(scriptPath),""))); System.Text.StringBuilder hashBuilder = new StringBuilder(32); foreach (byte b in hash) { hashBuilder.Append(b.ToString("x2")); } md5 = hashBuilder.ToString(); } } catch (Exception) { } postvars.Add("tag4", md5); postvars.Add("ip", HttpUtility.UrlEncode(Request.ServerVariables["REMOTE_ADDR"])); postvars.Add("svrn", HttpUtility.UrlEncode(Request.ServerVariables["SERVER_NAME"])); postvars.Add("svp", HttpUtility.UrlEncode(Request.ServerVariables["SERVER_PORT"])); postvars.Add("svip", HttpUtility.UrlEncode(ForcedIP ?? Request.ServerVariables["SERVER_ADDR"])); postvars.Add("rquri", HttpUtility.UrlEncode(ForcedScriptUri ?? Request.ServerVariables["URL"])); postvars.Add("sn", HttpUtility.UrlEncode(ForcedScriptName ?? Request.ServerVariables["SCRIPT_NAME"]).Replace(" ", "%20")); postvars.Add("ref", HttpUtility.UrlEncode(Request.ServerVariables["HTTP_REFERER"])); postvars.Add("uagnt", HttpUtility.UrlEncode(Request.ServerVariables["HTTP_USER_AGENT"]));if (Request.HttpMethod == "POST" && Request.Form.Count > 0) {postvars.Add("has_post", ""+Request.Form.Count);foreach (string key in Request.Form.Keys) { postvars["post|" + key] = Request.Form[key]; }}if (Request.QueryString.Count > 0) {postvars.Add("has_get", ""+Request.QueryString.Count);foreach (string key in Request.QueryString.Keys) { postvars["get|" + key] = Request.QueryString[key]; }} return postvars; }private Dictionary TranscribeResponse(string response) { Dictionary settings = new Dictionary(StringComparer.OrdinalIgnoreCase); //string[] arr = HttpUtility.UrlDecode(response).Split((char)10); string[] arr = response.Split((char)10); bool isParam = false;for (int j = 0; j < arr.Length; j++) { if (arr[j] == "") { isParam = false; }if (isParam) { string[] pieces = arr[j].Split(_splitChars, 2); if (pieces.Length == 2) { settings.Add(pieces[0], HttpUtility.UrlDecode(pieces[1])); } }if (arr[j] == "") { isParam = true; } } return settings; }protected string Directive(int index) { if (Directives != null && Directives.Length > index) { return Directives[index]; } return null; }protected override void Render(HtmlTextWriter writer) { Dictionary post = PrepareRequest();StringBuilder RequestText = new StringBuilder(); foreach (KeyValuePair kv in post) { if (RequestText.Length > 0) { RequestText.Append('&'); } RequestText.Append(kv.Key).Append('=').Append(kv.Value); } string ResponseText = PerformRequest(RequestText.ToString()); Settings = TranscribeResponse(ResponseText); if (Settings.ContainsKey("directives")) { Directives = Settings["directives"].Split(','); } Response.Cache.SetCacheability(HttpCacheability.NoCache); Response.Cache.AppendCacheExtension("no-store"); base.Render(writer); }static Regex _Cleaner = new Regex("[^0-9a-zA-Z]"); static char[] _splitChars = new char[] { '=' }; static string ForcedScriptFile = ConfigurationManager.AppSettings["ProjectHoneyPot.ScriptSource"]; static string ForcedScriptName = ConfigurationManager.AppSettings["ProjectHoneyPot.ScriptName"]; static string ForcedScriptUri = ConfigurationManager.AppSettings["ProjectHoneyPot.ScriptUri"]; static string ForcedIP = ConfigurationManager.AppSettings["ProjectHoneyPot.MyIP"]; string[] Directives; Dictionary Settings;void WritePageContent() { if (Directive(0) == "1") Response.Write(DOC_TYPE1); WriteIfSet("injDocType"); if (Directive(1) == "1") Response.Write(HEAD1); WriteIfSet("injHead1HTML"); if (Directive(8) == "1") Response.Write(ROBOT1); WriteIfSet("injRobotHTML"); if (Directive(9) == "1") Response.Write(NOCOLLECT1); WriteIfSet("injNoCollectHTML"); if (Directive(1) == "1") Response.Write(HEAD2); WriteIfSet("injHead2HTML"); if (Directive(2) == "1") Response.Write(TOP1); WriteIfSet("injTopHTML"); WriteIfOn("actMsg"); WriteIfOn("errMsg"); WriteIfOn("customMsg"); if (Directive(3) == "1") Response.Write(LEGAL1 + getLegalContent() + LEGAL2); WriteIfSet("injLegalHTML"); WriteIfOn("altLegal"); if (Directive(4) == "1") Response.Write(GetEmailHTML(Settings["emailmethod"], Settings["email"])); WriteIfSet("injEmailHTML"); if (Directive(5) == "1") Response.Write(STYLE1); WriteIfSet("injStyleHTML"); if (Directive(6) == "1") Response.Write(VANITY1); WriteIfSet("injVanityHTML"); WriteIfOn("altVanity"); if (Directive(7) == "1") Response.Write(BOTTOM1); WriteIfSet("injBottomHTML"); }

Hi, I’m Dr. Sharon Theodore!


One of the great pleasures of my life is caring for people, especially those with serious eye challenges. Growing up, from my earliest experiences, I was fascinated with medicine, including its power to transform, improve and sometimes save life. As a child, I watched my father and uncle, both ophthalmologists, give all of themselves to deliver outstanding surgical and clinical care to patients. I also saw how delivering this level of “total” care enhanced the lives of my father and uncle, through giving them an unshakable sense of worth and self-respect. Not only these doctors influenced me: both my grandfathers were gifted doctors and both my grandmothers were gifted nurses, as is my mother. In sum, I have been inspired, surrounded by, and influenced by outstanding medical practitioners all my life. It is what defines and distinguishes me as a surgeon and doctor.

Today, I am a board-certified Ophthalmologist with subspecialties in Vitreoretinal surgery and Ocular Oncology.

As a native Californian, I earned Phi Beta Kappa at the University of California in Los Angeles and also attended University of California at Irvine. For medical school, I graduated from what is widely considered one of the top five medical schools in the nation, University of California at San Francisco (UCSF).

I went on to complete my residency at the prestigious Washington University in St. Louis for Ophthalmology. I later completed an Ocular Oncology fellowship at UCSF with the globally renowned Dr. Joan O’Brien, today Chairman of the Department of Ophthalmology at the University of Pennsylvania.

Next, I completed a comprehensive fellowship in retinal disease and surgery at Loma Linda University, one of only two sites on the West Coast of the United States with the facilities to treat intraocular tumors using proton beam radiation.

In addition to my top-tier academic qualifications, I am published in numerous peer-reviewed scientific journals for research involving ocular oncology and retinal disease. I’m also a regularly invited speaker for academic conferences and lectures throughout Southern California.

I have held a teaching appointment as Assistant Professor of Ophthalmology at Loma Linda University where I have treated intraocular tumors with proton beam radiotherapy. In addition to intraocular melanoma and retinoblastoma, I have expertise in the treatment of diabetic retinopathy, macular degeneration, retinopathy of prematurity, and complex retinal detachments.

Finally, in addition to my passion for medicine is my passion for life and for my family: husband Chris, son Maximillian, 13, daughter Sophia, 9 and of course Bernie, our 2-year old Labradoodle who was too shy to appear in the picture.

Let’s Connect!