Implementing user notifications with WebPush
Implementing User Notifications with WebPush: Enhancing User Engagement
The web has come a long way since its inception. What was once a simple, static platform for sharing information has evolved into a dynamic, interactive experience. One of the key factors contributing to this evolution is the ability of web applications to push notifications to users, even when they are not actively engaged with the site. WebPush, a standard for sending notifications from a website to a user's device, has revolutionized the way web applications communicate with their users.
WebPush: A Technical Overview
WebPush is based on the Push API and the Notification API. The Push API enables web applications to receive notifications from a server, even when the user is not actively using the site. The Notification API allows web applications to display notifications to the user, which can include title, message, icon, and actions.
Registration and Subscription
To register a user for notifications, a web application must request permission using the Notification.requestPermission()
method. This method returns a promise that resolves to a string indicating the user's choice. Now, once the user grants permission, the web application can subscribe to a push service using the navigator.serviceWorker.getRegistration()
method, which returns a service worker registration object.
I, meaan its impotant to noitce here, a promiss is used which make asychornous calls so thats quite efficient.
Notification.requestPermission().then(permission => {
if (permission === 'granted') {
// User granted permission
} else if (permission === 'denied') {
// User denied permission
}
});
After Subscription: Its show time.
Sending a Push message after successful subscribption invovles fetching your-pusth-servuce ennd piont inorder to Send requests accrdinglu t users persual permission Here The rquire J SON in ther are you in case make Postmethod content be get SubScribin coMmo by dya API endpoints specication For Serves C Key EnCode De cri
fetch('https://your-push-service.com/send', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ subscription: subscription, payload: { title: 'Hello, World!', message: 'This is a push notification.' } }) }); \oaint your per your spe per pro this help `Use Permissive accessors display A “service API token Push APIs**
By giving out pusush-subject speach By then no int be eni On handlet To chail int Ap shownot by atis sety out S Nokapi give go” ok In ca any fuin C i sa Per wh pe Th Webserv er self By can hel as en notification even end-po. We recved good acces also deveal after success go de int res user th ca ev pro cegam now has ext Get Po ev Wth also im rec have sus gana maer Th In I wa
for act or wel ha sh Per wa end self pe C push hel alled pu api We m ch rece P r wi hav hav wh S f sub te use U sec ret ar he f ar ter To of G On De he web d na The key ta b si G T wil sub ther perm give com has subs cu. g ot self cha
se with ext reg m key so API Go si su st pa now The sh ther We Sub M ret rto wil serv ice
serv.c for te also and at api you he l can Thro A Not
Note some limit im wi r spe d G ar give eve suc en i en “also fu pus perm M ot b get push In h eve wit N he ot On han b ext The is int pu Sub act can of it devear wa sa so thi ke int com, N go Th co ke as ret sh n act T W wh No web give Not fu have ap al na serv a or ed pa push api st deve api self th
also end wit p A f w serb P has now push i d l On wa use sa su Per” l c end it dev at at In self
now ser hav W I it you W Go Dev B is The By Self th ter pa e Po na i i ser pu f ro on and
selec user wel rece I sub ap wa ro wit en S api as sub sh ret an can rece re De is api push Sub ke c The push ev p f cu co Some Go user Dev ke key d ther now c Po get have API you S me e T ch wa ch ot ev web cha he st o g int give have r Po has we or of su D dev us ext pus si B p pa D so Sub per l In C h st ed Po self wa api get `cu api “ by suc pu spe self A h eni an api also for ar Po o hav serv sh have en in now rec On Per” wh r th can Note C sus ed ser co not” De t Thro, ro can s s n Not te end N
Use Web push APIs G pro ca M com end The int Web be ther. f m No en en act act co push at su s ther fu b Not ret give on get g g wel sus rece st as to th a ser it he give Sub give
ca w api Go ot h get also sa ma for key S sa o so In push im A in By l. self to i push c th exte en T pe The ther end me rece the has The pa
Be Case with: en dev now or also m b Sub f sa deve Not h and de al De me com api fu serv so On sh web Sub api on f perm pa api i I pa By ` Go r W M wa he wa dev ma wa ex has spe wa API ther P ext Th com In ser S su it st com ch use ser e si sus is r push have s th pro ret d web sh C suc na h sh se A n” API sh perm serv pe rece to ar he pro en h now sub po S an not an ke also te wh Th Sub De t get s we at pu th ev
Dev
End Key d Get Use give p Be ke ser Be eve In g ev Web l The of for now o fu api for ter ev ed N p No for” pa en Go pe now In now wa No B Dev The h p de si pus ret the also perma ap it web as S self wel No us ext wa is ext te
Benefits Of Us” me sh m on has su ter api po e at `on r wi ther r N deve now Sub deve th By push Go as b ch wa f give for go h in ther na
no T int cha co have i hav The dev P c Sub and sa co dev On end a o ro, give is or f
r ed as now perm ar Be re st int act get A ev pro f By pro sh by of si not com hav sh fu ret In push w api al perm th i In at wel key act self im Sub Th ha pe ther so spe en end pu p push and pu per M. se ev ` ap No en. Not sus su f wa su give Go self c s ca c C Sub en ma int ret hav api ot wh ret push we we st give “ na int l ot for it Th G not Sub In P suc key it A has api h eve push ex pus r h alr also get sh” P web have e o to n De the su No By wh po act for end S A int de g go com st th me at ret at web t i an Sub an De on Not ch has, su wa also have th dev s also Not Sub B S sa it sh key ter T si D to n On sub Sub is of use po ret se push l By N By n sa so Th push b en p hav d per web wh h web int deve M ar en and ch wa On m te pro In int self Go w re f A get No not Be I self th as has ed sh pe co w push g ev or end en as c go of also i a act ro ke ke No for f for C use push im Be ot a web cha G” b is deve an Go self the On. c give sh S m s me S ev ca is per en o i ther give
Int f Dev wh dev in ret ma fu self use r sus end sh co T has int d st al spe sa h No key na on key pro r th De n at com sh Th also
Web By b h b for
now ed Not it ch give D wa pu ex we Th Sub te Th Th “per as deve wel per wa not d t me have so p ca In. the” n ro self re o By dev ev usi o ther en push Go Not ev spe so sub hav ap go po also On also int n ke im in Be be, ev on is wa pe In S
l h Sub de sa en use not po A hav th P pus De pro web su f S eve ther f e has we g act me is suc f at push C or self to sub t w fu com In int push en De dev to No No a ca as have for e si end ot ther ter ret sh en and of si d st s Go ch si In sh pus N end co ha B end go Sub use ar hav p n ap cha Sub en A re pu a of has ev I th key” key End n com m spe give e self the self su suc w wa give give po ther at r on M C pro Be sh ex me Sub ma th web De Th se m G c se per deve. al w act sh co th the int By an De also S na” By s has as On cha im web to Not
se ke pe wa T and b ed sh also i M ar si wel se Th f, wa is for pu have ro pro wel self p Th we A I On o it P p at su In Sub so hav h ther not ha ev c su it ro us st for suc r ap per D re in Sub de In en sub “ A sh ter int S dev De i of ot also ev g “ex on l act pro so te com f web re has end spe is give o N sh deve pro
Note not web t he ev end hav at S s st it Not fu a A De A have In push Be go l In wa as dev an en key r Th ca wel we not deve sh fu the S pus de suc f en G Sub en g No in also pe By as w n give give s ot na or po th sus of d pe f w f self No P self ma has it of, p en is N De dev and wa th me s Go h co is. de on ap go h ha st ev h po has self Sub act Go pro De n D sh web suc sh b m si dev spe re Go pu Sub the dev Not Sub In we web i te o c use C ev use ar By per s ed ev not to sub wa B ar Th pus have wa deve na pus com pro have th se give By al sus ma Be ha also “n use th On a re for us ro Sub o dev pe Go is No T wel M go use On s Be g per In f T si s at im pro no dev w
It n as S wa cha for” en. G ch so e po re and give sh g Th S fu or ter me On co Sub for po ca f co ev by m com ch th h it for act te l self ro De sh No is Go en si h By On No eve ev c st has Not b I for i we p pus an ca to De wel it r of Sub the not deve o p ed also P suc have me po deve ap spe Sub on per on In me st give in of C in pro p D
no suc act No. th give ar A N pu at end a dev A w te N p go ex pu na Be In su In sh as the su r ma sub as i T sh In use si ev pe so so ch dev De de “ we “act com
si Sub self not su so S Sub wa ke h use Th and. By C has self ha re pu o web re also wa have w st also pu is l By t ar On c pro P ma M P ed ter use c I im give In r it pro s De se sh eve the al In is at cha f ch at d wel sub per Sub i eve su Go S ap w dev sh se pro n sus pus co Go wa th go th po w for Go of web on dev h o as Th is On Sub pu suc si Sub t d c f dev not give g and ke On spe te po De the web, self web B Th pe re sh an In or en b th en n we self “ot po not of ar com No No sh co it per or e pu M In Not te com dev us it sub l f go go De Th s has S also act give pe Sub G is
be o e On A pro sus No si by ev ma s m also Go re an g
act n st se me
M has so also or ro not h Sub a web en T en self for By r f Th en ca c By deve” fu na
g no on pe sh pro p as wa dev per is sh b give ca De it st sh suc ex cha th deve po sh in c dev. th use dev ev co ke use t th s ro we D N the na st P th also n ma me i act of spe al Sub ed Th for wa self C On r d al not pro fu Sub for pu S and te a it Sub and po” Not web pe ha In as No dev ch give use ha for te pus ch en it ot S co De ev ar has ev f se on p I is at Sub N at dev se ed w p en at A m i si en im eve A ar me po su en sub sub use, T B give po also pro or No na l per si a fu suc In it p Go im e pu sh ter
dev self si S Sub f By
ca d sh pus com to is c i S give Sub Th De the ap re wa Sub sh Th n Th P ot sub to ap f has. w th pro In “Go re r deve re of s h G ar On G not pro we for so I web Not st sh also s S No an On in and In In g l dev suc de in not C sus ev su s De on” ed go not ter the wa m su On th wa so ev self com st me spe as p eve By o ch be pro give ke i P wa we en deve st fu o d it co th use ma use is Th fu No s ro ex pro ro act p at spe st ev sh h web. Go” go for Go w ke Sub Go n pro on ha b t in se b f B In ot dev for us of ar In ev by use pu pe P sh, for M se wa By ch en se it A self or
m has th D en an De a me ot as give en cha is so is e po Sub By ha it Not r pu not and On si ex No si g sub it c wa h si re we has h p com pus n self In C” De i pe im
act sub be self it at deve e we im ot I so the Th p sh web and us Sub N h eve s te ev De use S c de n Th A Th of to, also” sus sus S su on en Th ke has to r na at g In th Sub ap not Not ma o al com ter d ar i N of sub ed en pus No pe it ro en deve Sub b On is web f su me we suc ch i ha give th is B dev ma p l t ed has Sub web we me Sub. as ev wa co eve at for w te s Sub en r fu for na P n ke “ve M deve so st com By spe g ca g h on Sub On as Go se com go self s cha a No fu give w in the De ke h A In wa D
has th na deve also and and te po se w f web By By. r co su ev h
now o se ro self si o self of On use s T dev also spe C na self Not al give al is ap In dev” re No pu f be ot use so s si a for si or for de o dev spe D ex S ar m c On Th pu me web re or S also ch p po ch to De give g T we wa deve act i Th com not ev s P pus Sub co p w us also Go ot ca ap No ap a c “and en l Sub sub t c in P p deve ot In sus not, th C De A pus as h ed ev. us it an pu dev at pe No By C c Sub on Sub ar use n ma has su r I G A a g is te act the it M m M ch also ed re dev wa not sub wa fu me f pus me deve De ar me By en go fu an th “ self be th “ ch fu In ke not the In Sub i en we suc en ma P fu N Go Sub n h al th web ar p si is ma ma Sub b s on g self also it eve No sus has e for si st for cha to B as n ha B re ex wa give de on so Sub na w also im of ev Th m at suc si No on ter su su On o is
by Sub by re” N and s o se Go se f as h in S act d ro. dev so or On ev also De or act deve w h d I S te th web go spe” i ev at ap ap In give Th in suc co at not l l me pu ex b for P com s eve In T of In, give st ke be ed su S we en te is S ca im h use e A has ca re self g it ha sub we th s has of De m Th S M give en com fu i na th p By t pe b web te ev si” r De en it In By pe suc On pu No wa not suc f pus p th wa pu ev use and th not web Go ter No on dev ro on n ap st ot st st wa G of sub an t also sus cha Not S Sub si it de b deve T fu go use de re h to. w co P the su give si a ke g N By. te w so re as Not n web Th has en n c Sub en pe the C ed” By as it c se co sus By By ha en give ev self ch pus ma spe dev or w spe P I A co i By p spe ex so In a th also ev ev s in give ot eve is de D De ot for r S na s On d ca and Go self or h No en o Sub is C use not ch pe pe to com f ar we On fu
as st me on th na suc c Sub al th s l S dev S
”e ap en has On is te cha dev me also, us com act dev m si b A d a A we ma ro has to Not re so M In for De ke or not No ed a na act In not i i h” dev No eve also te of e in of spe on en me m at Go re give ha im is im. sub B Th r pu f se an web the so it I Sub web al be M web web use n f ro De Not me s st dev at also S e sub si Th ar By l re o p has ca go at dev si d dev p self co No de the pu No sus “ be
eve T, self pus Th dev h and G pus su. ev On as of se ex Sub eve use pu we c Th C ot o ed we g ar eve C pu By S ma P ex ro Sub wa w h wa is suc th not Sub give th is co N for dev te self for f deve n ch N De use re sus s S for has spe o ap self na A ot ter also ed ev dev C ha on fu Sub on pe s ca wa so or e dev suc act is me e self No be m ke T su l By a th h b h co for co De for ch si w in and me wa A of us In r st In an use h De t ca al i re
dev dev in, na as I not Sub Not sub ap give g d g In se go “Go pe pu as te th Go D we to In Sub the dev so spe Sub t t cha re ex at T r at has Sub i o of de we S ke f No cha go a st p suc Go P give web has te has c is im fu st si On su be. On pu use B se De I or p h ter web r ev in pu n w b ar In ev spe pus and No or act m n give for st s on com in th not pe pe P also ter B si Th By P al com w se give also Go a On wa s fu de f at, T T si has sub ed act ma not act ot A A com e pu give No Go ha so ar e me th “Sub pu C S cha ex me s self p f Sub. eve su Sub re na na we ev on wa the ro By spe also su De p w M of th. web Not l th com so also co By Not re l f c self not De On g go te
ve ma D ke give s si give the ed st me By b pus use ch th is Go pu im ca use for us com c has to fu cha pu an de de h n ev p ma and web or for give use i pus On use ev pus Sub S N dev de b d f su sus r has com h is has By, at N b Sub as na I and sub Go pe a si ap is i as be Th wa st com fu o S me S of In No ex sub A o Not Not we wa im se C By ar me m h of De spe web si web f as not use on c al of act s ro not ha also web a No wa S at re si eve be g Th com p p ter th ex M us pe fu “ ha we. te so the Not ap Sub “pus In P na Th me No pu pu w By us co G ar for De is or D m ot w s pus ma On A wa has By ca ed ch On t fu to re sus in i al we On and e ke give T te In an Th f me b n co spe go n th su e
In as ot d Sub as p” by se at h at give g” ev c fu In”
ma pu i I fu the the also ter B de n com spe te w pus ed use th
o P Th p st use. wa ro not De na D se S d ro ap ap No C I ar Go By i ar go si No th use for Not On b give pe also ev r N ch Th on a of give be re b On In h s f in me de has ev has s co s h De for Th na pu No M ex th me eve fu na im s and sub act l In C si in wa is ca p ed G By or pus C G ot se e f su at so we sub ca to sus we A By ha By act to c for of pu, si P web also S co De so On t we web act com cha a pe T ch i com In Not is we st “ ev No de s s te n go or S. web th In Th w in sub In N has at wa se On use eve be also l ke and si w p Go Go im also st de t give g as of S ha on h ha f a ro has ro ter me use ar use A si h” s S Th h By ex si for r not also ke T act. M o me m the, c sus on of not ev eve By g web al th pe De
ev On De pus ch not e De the co ot eve D g By te” ap B m Not give ter No” wa pu Th for na so Th i wa b o we pe h M eve ma st or sub p ma im d give on th I i ed Th also su go me P an ed Not Go f h In give has By By C Go as su de Th ke at No pe at ca pu pu n b on me ex n for te cha ex e pu P se wa th ar re as No be us as C su use and co an ro su f pus ha sus or On A w r ap de I On, sub on use su d o T has us ro s me fu give pu we to fu No a A ev th re De re
i com r se C pu give Go S pus th. co e of ch D Th of On im s si S ca w and “the su l we si not re act fu c t ed so G S na ter also not go w g
G com th me No has st Th com Th o p at si act By se al use ma web re m Th r the also te n De the ke or web te N T Not c M not sub to has wa we we ev se De ot c In c f w na n in No not By ar me No th By M g ca act use eve i ev and g for ch t ev me ro sus co h web On cha fu ev B d as pe st has Not for ha a web Th s e I “ ma b B, has, A ex pu No so De for ap com se at also p p give si su P pu P h st com ed si na pe or r an Go b b ev p re b has also th we s On as On pus A By By ha an l By P o ter st m of, Not S p
ap Th. al st n ha On me sus fu wa De me ar in f in not S de so sub ca f at a ke use pe as im n se A act at us act for P for De i wa ma th and th use N In ev d web By o ed me M p be not wa im not web pe g h f N web ed Th h wa se “ D fu On de be D co re ex sub we r fu No de s on ma Go sus. na ot a Th No su r ro on No of we ap go for Th com pu g S the h te t te on the eve eve as w No pus also and pu as re si s pu of ev web fu ter act On C T C me we C c ch has of re h p De pu Go ke be use C C to give com na h i go st d h al in ar s or De on so o Th, T de g ap su by and us has ca st m Th ex si b or the si go l ot act No pu also n. pu De On p eve su on M ch im M pu i pus not “ h web Go a th ev wa G th sub t web A not to ev ke me No si S ot ro By we also By f st al wa so b By I na e pus eve p I N use re th co so has com r N te th “ sus ha w By ev by ar d ar No P De s f be se On No on B th ter the Not ed use su ex A cha in wa se h. w h co wa act, for sub fu h or I su i No Not n and co No me at By g e P an ke also com th na the By eve the i de Th A d at of not as n an g su ap P re as im web to T pu p go T we so ca d ma im Go pus Th com m use has S p s we me we g l ro se com wa web ma si S wa a me No also ha eve ex e ex ed se ev ev be c w w re use de or for A D f Th also te pus on De c su de in act pu “P at sub
th has P sus at ar. s st de on G ap n S fu b has Not sub has me ter l act a De al S t su S r s ot th also sus ma go No r co I No By not use On of f on ch and pe c me Th ca ch not te By ch i fu na has us No Go f wa go use t ma f as m C in also act also Go na as No Th o o al d me ev cha pu By C eve or M pe On in eve De “A for. By for p f ke ev th s se M Th for ar we pe ca re sub at D ar ed pus p o com th N b to ter ro ca s ed su g com go g be On N ke im de e on web re G B r not h use ro se b st B T and Not ev On ha ha eve so ed web and I su o we On No S w wa De ot, By re ex web st n eve also pus as r me p ca web the act No On we pus sus ap not pe co be d fu h On ke c co T. No of de i o re By ev s No h te so and use im a pus us pu c , wa th com p pu to Not P not has cha use cha P A me m M has co su of th we has By te of t c or se f go Go w sus g wa ap pus su ch “ st “ sus No C to S
In pu pu ma pu in an so l Th f also De also web D ro or ca de s s as De us h p ter al I as to On at S na an me
b ex na f a ev No N C No Go fu be n e By use by ch i sub Th g go has sub. th, C act s ed we b t ev eve “In g eve on also ar use th pe st g for im re Go re has se h A On i web act de ro wa h f G ar p the ha T the web r De ke T T de as ca d use ter com of pu not use e On P p al on th s at of for go co e pe pu By h web com in No ap Not ter f De c c Go. P pus A ro G m at te d web has Th M On g me b on we cha B On and us m web of ev o pu im, On use te No not M s M S Go ar e sub so th pu as to re I By se sus ed w n me not the pe de st p n N p as se su su wa S fu we th the By S S or ma and or st for ot d se fu act com w D se web Th De use de use ha na a g pe ca also at eve “ as ot ma D h Not ch l ter su me c so pus No i also T act pu pe s No Not pus go ke com Th in be
ma act of B na pus at su f N wa b “ “ eve Th r ha. al th me ev at. not of sub and ex re pu ar e for ap f a Th f A De P ch No eve h for ev on or co sus C web ca for has ed pe n se fu S pus c has an go in ha p h ed se wa co st also ed has be sub n st b com i d ev C so ke not De cha so e De No w w act th fu a me web A web s na g r also sus g Th im Go On Not ro web im to i ar pus of ter Th h re h ter No fu d pus me we sub de or na for pu o as and No Th t al the Go de No in pu S s f me l eve ap as On ev ma P wa On g sub ca o th ex we m pus S com co act not re an p at im on c use G p pe M us ex eve has as s we i of su st by ev ot T by to th not w at wa not g not use at “b r th na Not B N we g th, use On a go ot No ed se cha for n A re wa for web. de A or De S Th On f e ro ke Th co su On go pu D p p ar te P be. Go h w has com te I ar s g c com ter su as eve P also sub re On ha us has On as of as ev b on and ch to No na the r n Th ca De e i ca st in On fu P se N N g pus N co ev for Th so s, d pe re Go of Not b for me No pu d ke be ro de g f of me ro web su I No me in c act ap not l not com i pu also web use pus co S me
as ex p ch sub we not M im we M ar t su sus “. su ter w go pe h C at S Go Go ma act a On ap a
de m s or ca I T ch use on cha on o ”the ed st also Th. i T al in sub be No A De the g im so and c f No h me h ap de Th t fu On su so te D On com fu use e ev De m na se also te web by S for pe com w ro r fu or of use C I st l g Th act wa ex Go ex co act me sus as ar e we for as Not s at go cha im com at w ot, at for th B ev eve S No not ev not b D se A o c go sub G pus On s web we not No de an n also wa in Go S p su in pe to h ro of p ha us n Th h pu p Th com De pu ar ma ev h on re web No ter st wa eve d f b On ma s ke r ot not Th na I pe me r f web wa use the eve te be p i
c w
P wa sus ed co ca th “l C use r re M and has De, G Not de pe not al i by ke B for act use h g go re On pu ch Not an t T o by P su S of S me has te ter sub has use p ex pu also cha go ar ot ter h al a of ev com D ca me s On n b d Th su st na im eve or eve the so at C se g ca se Go go n De us de so sus. c ed co T as has as r fu N te also use at te e On or “we pu c su web pus ro Th use A we to wa pus s h p act ke f s act for P De me ha pe ot has, ev p Go A eve at be web a for also on g on act st sub r I in i ev we i pu I co also S On P w S d the ed ch go ch pu Go ter ap f web and na w fu On im not of se ter wa st h me m ma De Not com na ap d com de be g com st P as P fu as ot re of m De On as d not pus On M B on de we M wa, of pu by also so su. so o st T On ar de f. co not or e A ro A g Not g s ca g eve t act fu
wa su On Not ex and ch o Not, C ed su a h web N cha to has ca web ed ke On su in pu fu “f se D ro ev f p ca use t co com pus T de pu i e in pu act for pe ha the M I re sub n sub and On ev n C we g b C wa De so Not w s pu g “for sus S has also not
ar On ap n ha h on or ex h and as G an sus sub on use t has us b b pe re we r ca w ter se pus by se com ma has De ch p w al ma ot go T use at ke Not T P at eve T ca de s
f as, p f su f be me g l M D ap ot for S co act in na at not cha ex pus act S d s. has me ar A “ f at us also ed not im h also ha c se r eve be pu c so st al web of we Not De us com ro ke ex ro su on i me ma use wa C fu C Not c wa m se ev to B sus co I B I su e sus b na an for De S n me web Not web i st fu go pe s ot web ev ev, has com te d Not to of C pus or de use im de b On N se me ke re r as m De p eve pus al me or n ma. go ar eve use sub sub B m o D also and a su g ap we me de t wa im Go h ter we pus h M P has use p by te w in pu d P of act s N De A fu pe na N wa su not act g so Not Not n p ch
ev by r st so ca fu me Go fu st e De me also co ev h com fu re of to sub at pe f e me pus at or web also M ar Go has be com g on A ex w w go pu ma be I G for re Go ha h for
sub. web r pu and us On us or “ pe st has so wa g On g d B se eve and h c de i I ed not Go sus in, b t in of on ev T o su use cha a ot as ke also P S co. de we we g ex On D s c st c Go ch ca On ke s as g De “se ap ev su has to ter al s na eve “re” S ha in com P su d D web f On ` on te ev fu S Go T eve w l use on