Dynamic Pricing u eCommerceu

Dynamic pricing je cjenovna strategija u kojoj tvrtke svoje prodajne cijene proizvoda i/ili usluga određuju prema trenutnoj potražnji na tržištu.

U ovom članku donosimo detaljni pregled teme kroz sljedeća poglavlja: 

  1. Što je Dynamic Pricing?
  2. Primjeri Dynamic Pricinga
  3. Prednosti Dynamic Pricinga 
  4. Izazovi pri Dynamic Pricingu 
  5. 4 vrste Dynamic Pricinga
  6. Kako implementirati
  7. Dynamic Pricing u Shape Core webshopovima
  8. Preporuka: KLIKER market dynamic pricing modul za eCommerce
Dynamic pricing Preuzmite sada

 

Što je Dynamic Pricing, dinamičko određivanje cijena? 

Dynamic pricing ili u doslovnom prijevodu dinamičko određivanje cijena, jest prodaja istog proizvoda po različitim cijenama prema različitim kupcima. 

Preciznije rečeno, može se reći da je dynamic pricing cjenovna strategija u kojoj tvrtke svoje prodajne cijene proizvoda i/ili usluga određuju prema trenutnoj potražnji na tržištu, i prema ostalim vanjskim i unutarnjim faktorima. Cijene se izračunavaju algoritmima koji kao ulazne podatke uključuju cijene konkurencije, dostupnost proizvoda/usluge na tržištu, trenutnu potražnju, ponašanje kupaca i povijest kupnje. 

Dynamic pricing revenue

Dinamičko određivanje cijena nije nepoznanica u B2B poslovanju gdje tvrtke često kreiraju posebne ponude i dogovaraju cijene sa svakim kupcem pojedinačno. U B2C prodaji dinamičko određivanje cijena sad se već duže vrijeme koristi u određenim industrijama poput turizma i putovanja (prodaja avio karata, rezervacije smještaja, taxi prijevoz i sl.).

U zadnjih 5 godina i trgovci su počeli sve više prihvaćati dinamičke cijene, posebno u online prodajnom kanalu gdje se isto može automatizirati. 

Dinamičko određivanje cijena može se provoditi tjedno, dnevno, svakih sat vremena ili čak svakih nekoliko minuta. 

Dynamic Pricing primjeri

Uber i slične aplikacije

Vjerojatno najpoznatiji primjer dinamičkog određivanja cijena je Uber i njemu slične tvrtke koje su napravile pravu malu revoluciju na tržištu taxi-prijevoza. Aplikacije poput Ubera prilagođavaju cijenu vožnji trenutnoj potražnji (koliko korisnika trenutno traži vožnju) i ponudi (koliko vozača je trenutno dostupno). 

Uber surge pricing

Surge pricing kod Ubera - povećanje tarife u periodima veće potražnje za vožnjama, Izvor: Uber

Avioprijevoznici

Ako ste nekad kupovali avionsku kartu online, mogli ste primijetiti da nakon što nekoliko puta pretražujete iste rute, cijene aviokarata krenu rasti. Odjednom ista karta košta nešto više nego jučer ili prije par sati. Isto vrijedi nakon što se objavi datum i mjesto koncerta popularnog izvođača ili atraktivne utakmice nacionalne reprezentacije. Avionska industrija se dinamičkim određivanjem cijena koristi još od 1980-ih kada je s istim započeo American Airlines (ovdje možete pročitati vrlo dobar članak na tu temu), dok ga danas koristi većina velikih svjetskih avioprijevoznika poput Etihada, Lufthanse, Air Chine ili Emiratesa.  

Na temu dynamic pricinga u avioindustriji rade se istraživanja i pišu znanstveni radovi, a efekt koji je dynamic pricing donio toliko je pozitivan da su razvijene brojne strategije, te unutar aviokompanija postoje čitavi odjeli koji se bave samo tom problematikom.

Dynamic pricing u avioindustriji

Izvor

Retail i online trgovci

Kad govorimo o retailu, ovdje su predvodnici u dynamic pricingu veliki retaileri poput Amazona, Walmart i Targeta koji su dinamičko određivanje cijena donijeli u našu svakodnevicu aplicirajući ga namirnice i ostale kućanske potrepštine. Kao jedan od najvećih svjetskih trgovaca, Amazon je u potpunosti implementirao dynamic pricing koji cijene kalkulira i ažurira svakih nekoliko minuta!

Zalando i druge fashion platforme također koriste dynamic pricing u ecommerceu kako bi postigli što bolje prodajne rezultate i maksimizirali profit na postojećoj bazi kupca. 

Industrije u kojima korištenje dynamic pricinga najviše raste su Moda, Ljepota i Zdravlje, Dom i Vrt te Prehrana

Prednosti Dynamic Pricinga u eCommerceu

Trgovci koji koriste dynamic pricing na svojim webshopovima čine to iz nekoliko jako dobrih razloga:

  1. Povećanje profita 

Dinamičko određivanje cijena bazira se na trenutnim promjenama dostupnosti i potražnje nekog proizvoda ili usluge. Uzima u obzir fluktuaciju cijena na tržištu, aktivnosti konkurencije, čak i ponudu i potražnju pojedinačnog proizvoda. Sve to zajedno čini set podataka za postavljanje optimalnih cijena u datom trenutku i povećanje profitabilnosti usprkos promjeni cijena. 

Kako točno štedimo novac, odnosno povećavamo profitabilnost?

  • Ukoliko je potražnja za nekim proizvodom na tržištu veća, možemo ga prodati po nešto višoj cijeni i ostvariti veći RUC (RUC = razlika u cijeni). 
  • Ukoliko je potražnja za nekim proizvodnom opala, a imamo ga na zalihama, plasiranjem po nižoj cijeni prije ćemo ga prodati i na taj način osloboditi sredstva koja bi inače bila vezana u smislu zaliha robe koja se ne prodaje. Dugoročno i na veliki broj artikala ovo može znatno utjecati na profitabilnost i poslovanje tvrtke. 
  • Nema potrebe za ručnim računanjem cijena, kao ni za administrativnim poslovima povezanima sa njihovom promjenom. Budući da se sve kalkulacije rade u web-based softveru ili posebnoj aplikaciji, tvrtke štede radne sate i stoga novac, a ujedno se smanjuju i dodatni troškovi zaposlenika. Sve to doprinosi povećanju profitabilnosti. 

Osim toga, imati pravu cijenu za pravog kupca u onom trenutku kada on donosi odluku o kupnji znači veću stopu konverzije, veći broj kupaca i opet - u konačnici veći profit. To je prvi i najvažniji razlog zašto sve više online trgovaca implementira dynamic pricing ili bar ozbiljno razmišlja o tome.

  1. Veća kontrola nad cijenama

Iako bi se moglo ponegdje čuti ili pročitati upravo suprotno, istina je da dinamičko određivanje cijena donosi veću kontrolu nad pricingom. Trgovci koji koriste dinamičko određivanje cijena:

  • imaju stalni pregled nad cjenovnim trendovima u svojoj industriji,
  • pomnije prate cjenovno pozicioniranje konkurencije i
  • vremenom stječu bolje razumijevanje ponude i potražnje određenih proizvoda.

Sve to pomaže trgovcima definirati prave cijene proizvoda i usluga u pravom trenutku i posljedično maksimizirati prihode i profit. 

  1. Fleksibilnost i očuvanje vrijednosti branda

Kao jednu od glavnih prepreka za uvođenje dynamic pricinga tvrtke navode strah od potencijalne štete koju promjena cijena može nanijeti vrijednostima branda i korisničkom iskustvu. Potrošači koji nisu upoznati s ovim načinom definiranja cijena mogli bi različite cijene za isti proizvod protumačiti kao manipulaciju ili prevaru. To je svakako tema na koju treba obratiti pozornost, ali dobrim pristupom negativne posljedice se mogu u potpunosti izbjeći ili minimizirati. 

Dakle - ako se dinamičko određivanje cijena dobro postavi, može čak zaštititi i dodano ojačati snagu branda i obećanje koje putem branda komuniciramo korisnicima (pr. najbrže, najbolje, najkvalitetnije, personalizirano, jedinstveno, premium...). U algoritmu za određivanje cijena uvijek treba postaviti minimalnu i/ili maksimalnu cijenu koja zapravo reflektira vrijednost branda (pr. minimalnu cijenu za premium proizvode - možda i možete spustiti niže, ali to ne bi bilo dobro za brand; maksimalnu cijenu za budget ili best-buy proizvode). Webshopovi mogu koristiti dinamičko određivanje cijena za lansiranje sezonskih i promotivnih ponuda i istovremeno ostati profitabilni. 

  1. Djelomična ili potpuna automatizacija dynamic pricinga

Jedini način da se kvalitetno vođenje stotine i tisuće proizvoda u ponudi jest automatizacija

Dynamic pricing u eCommerceu može biti u potpunosti automatiziran (i kalkulacije i postavljanje cijena), ili djelomično automatiziran, u kojem slučaju se cijene izračunavaju automatski, ali moraju biti povrđene od strane administratora kako bi se postavile i postale vidljive kupcima. Svaka tvrtka i branša ima svoje specifičnosti i različitosti, stoga je odlično što se dynamic pricing može u velikoj mjeri prilagoditi klijentu. 

  1. Pogreške

Pitate se kako pogreške možemo navesti kao prednosti? Ponekad je i to moguće. 

Kao što je slučaj s bilo kojim algoritmom dizajniranim od strane čovjeka, i algoritam za dinamičko određivanje cijena može dovesti do pogrešaka. To je često jedini i najbolji način za naučiti kako postaviti dynamic pricing još bolje i još efikasnije. Iskustva velikih tvrtki poput Amazona, Best Buya ili Walmarta pokazuju da potencijalne pogreške kod potpuno automatiziranih dynamic pricing sustava nemaju značajan utjecaj na ukupan profit, budući da su promjene cijena toliko česte da samo ograničeni broj kupaca može dobiti pogrešnu cijenu. 

Na Internetu postoje čak i specijalizirane error-rate web stranice koje traže pogrešne cijene aviokarata i slično. Zar nije to čak i dobar način dobivanja novih posjetitelja web stranice, potencijalnih novih kupaca? 

Izazovi pri Dynamic Pricingu u eCommerceu

  1. Razumijevanje kupaca

Kupci razumiju i prihvaćaju da se cijene mijenjaju, ali žele znati kako i razumijeti zašto. Zato su im sezonska i vikend sniženja OK, ali dinamičke promjene cijena ponekad dovode do negodovanja. Ako kupac dođe u dućan u ponedjeljak, kupit će majicu po 20% višoj cijeni od jučerašnje (jer je jučer bilo vikend sniženje). No ako primijeti da se cijena na webshopu mijenja tijekom dana, ili da se razlikuje online i u fizičkoj trgovini trgovca, moglo bi se javiti nezadovoljstvo. 

Iako dinamičko određivanje cijena može biti postavljeno tako da kupci štede prilikom kupovine, često se koristi u suprotnom smislu - u svrhu povećanja profitnih margina trgovca. To kupce dovodi do osjećaja da su nešto preplatili, te ako shvate da je netko drugi istu stvar platio manje, mogli bi biti razočarani, odustati od kupovine ili čak prestati vjerovati tom brandu. 

Kako se postaviti po tom pitanju? Komunikacija i transparentnost su najvažnije. 

U Uvjetima prodaje potrebno je jasno navesti da se cijene dinamički kalkuliraju i određuju. Poželjno je isto koristiti i u marketinškoj komunikaciji (primjerice, Požurite i odaberite svoj model jer cijene bi se mogle promijeniti!, Posebna cijena samo za vas, ne propustite! i slično). Ako kupac postavi pitanje korisničkoj podršci na ovu temu, odgovor treba biti jasan i informativan. Kupci će se postupno naviknuti na promjene cijena i tome prilagoditi svoje kupovne navike - kada vide nešto što im se sviđa, odmah će kupiti, odnosno neće odgađati kupovinu. 

  1. Izgubljena prodaja

Znate li za ROBO fenomen: Research online, Buy offline. (Istraži online, kupi offline.)? To je danas izuzetno često, a događa se čak i dok su kupci u fizičkoj trgovini. Postoji mogućnost da će kupac, u trenutku dok je u trgovini, a istražuje online, naići na situaciju da je proizvod na webshopu jeftiniji nego u trgovini istog tog trgovca. To ga može potaknuti da proizvod potraži u nekoj drugoj trgovini, odnosno da iz trenutne trgovine izađe bez kupnje. 

Dio propuštene prodaje može se spriječiti komunikacijom na samim prodajnim mjestima u kojima se kupce poziva i potiče na online kupnju, primjerice: Kupi online, neke proizvode naći ćeš po povoljnijoj cijeni! 

Ne zaboravimo da se pri kupnji bilo kojeg proizvoda ili usluge zadovoljava određena potreba - ako u tom trenutku kupac zaista ima potrebu za tim proizvodom, on će ga kupiti usprkos boljoj cijeni online. 

  1. Izigravanje sustava

Iskusni online kupci znaju da dynamic pricing modeli često koriste kolačiće koji bilježe obrasce ponašanja posjetitelja web shopa i koriste ih kao inpute za algoritam dinamičkog određivanja cijena. Takvi kupci znaju da ako puno pretražuju određeni proizvod, cijena istoga mogla bi početi rasti. Zbog toga raste korištenje anonimnog načina pretraživanja (private browsing ili incognito mode) pri kupnji, kako bi se trgovcima ograničio dotok podataka. 

Drugi primjer je paralelno otvaranje više aplikacija koje nude istu uslugu (pr. taxi prijevoz) čiji algoritmi to prepoznaju pa korisniku pri povratku u aplikaciju unutar 30 sekundi ili minute nude nižu cijenu za istu rutu. Istraživanja su naime pokazala da korisnici često izlaze pa opet ulaze u aplikaciju kako bi vidjeli koja je cijena prijevoza kod konkurencije, pa su im odlučili ponuditi bolje uvjete ako se vrate.   

  1. Rat cijenama

Može se dogoditi da dvije konkurentske tvrtke oboje koriste dinamičko određivanje cijena bazirano na cijenama konkurencije. Oboje žele biti prije svega povoljniji od onih drugih. Taj proces nastavlja se dok jedna tvrtka ne dođe do točke u kojoj više nije profitabilna, odnosno ne može više spuštati cijene. Ovaj scenarij treba u svakom slučaju izbjeći budući da od njega ne profitira nitko, dugoročno čak ni kupci. 

4 vrste Dynamic Pricinga u eCommerceu

Segmentirano određivanje cijena (segmented pricing)

Percipirana vrijednost proizvoda može biti različita za različite segmente kupaca (primjerice, po geografskim regijama). Najplastičniji primjer jest jakna u polarnim područjima vs. tropskim područjima. Ili udica za pecanje u priobalnom području vs. pustinjskom području. Stoga algoritam za dinamičko određivanje cijena uzima u obzir lokaciju kupca i na temelju nje definira prilagođenu cijenu proizvoda. 

Segmentirano određivanje cijene ponekad se naziva diskriminirajućim, no razmislimo na trenutak. Ako želite popiti kavu na glavnom gradskom trgu, platit ćete ju puno više nego u lokalnom kafiću. Ako kupujete namirnice u trgovini na otoku u turističkoj zemlji, platit ćete ih 10-20% više nego na kopnu, bez obzira što se se radi o istom trgovačkom lancu. Možemo zaključiti da je dynamic pricing samo način da online trgovci isto to postignu na svojim webshopovima. 

Vremensko određivanje cijena (time-based pricing)

Vremensko određivanje cijena znači korištenje vremenskih perioda za definiranje cijena koje su više ili niže nego obično. Često se koristi u prijevozu, poput već spomenutog Ubera, Bolta ili sličnih. Isto tako, koristi se u dostavi hrane gdje cijena pripremljene hrane poput sushija pada u večernjim satima s ciljem prodaje preostalih količina. 

Vršno određivanje cijena (peak pricing)

Vršno određivanje cijena znači da su cijene više tijekom sezone u kojem je proizvod tražen. Može se primijeniti primjerice na smještajne kapacitete tijekom praznika, na božićne lampice prije blagdana ili na kupaće kostime prije ljeta. Dinamičko određivanje cijena za takve kategorije može se automatizirati na temelju broja pretraga ili posjetitelja web stranice - kako broj posjetitelja (odnosno potražnja) raste, tako rastu i cijene.  

Ulazak na novo tržište (penetration pricing)

Pri ulasku na novo tržište, trgovci mogu privremeno nuditi niže cijene od konkurencije kako bi se pozicionirali, među kupcima postigli prepoznatljivost branda (brand awareness) i brand preference. Kako to može biti dinamičko? Primjerice, može se postaviti pravilo da svaki kupac dobiva 30% popusta, no samo za prvu kupnju ili prvih nekoliko. Nakon toga, cijene se vraćaju na standardne vrijednosti.

Kako implementirati Dynamic Pricing u eCommerce poslovanje?

Sad kad smo naučili što je to dynamic pricing, koje su prednosti i izazovi te koje su najčešće vrste, postavlja se pitanje - kako ga implementirati? 

Za implementaciju dinamičkog određivanja cijena u eCommerce trebamo 3 stvari:  

  • dynamic pricing strategiju - definirati sveukupnu strategiju, za svaku kategoriju proizvoda ili brand u ponudi 
  • dynamic pricing softver - za izračunavanje dinamičkih cijena; treći (vanjski) softver ili kao dio eCommerce platforme na kojoj je postavljen webshop 
  • izvor ulaznih podataka - softver za analitiku i skupljanje tržišnih podataka, usporedbu cijena i praćenje konkurencije

Kako se određuju cijene u eCommerce sustavima?

Pri izradi web shopa, eCommerce sustav na kojem se vrti webshop najčešće je integriran sa tvrtkinim poslovnim sustavom (ERP), u kojem su spremljeni i obrađuju se svi podaci o proizvodima, uključujući nazive, tehničke specifikacije, nabavne cijene, prodajne cijene, stanje zaliha, podatke o prodaji i drugo. Integracija uglavnom podrazumijeva da se prodajne cijene koje su definirane u ERP-u povlače u eCommerce sustav i takve prikazuju na web shopu. Svaki puta kad se cijene promijene u ERP-u, promijene se i na web shopu. 

Implementacija Dynamic Pricinga u eCommerce

U tom scenariju, postoje tri točke gdje je moguće implementirati kalkulaciju dinamičkih cijena

There are 3 points where dynamic pricing calculation can be implemented:

  1. u ERP-u (poput SAP-ovog dynamic pricing softvera)
  2. vanjski dynamic pricing softver koji dolazi 'između' ERP-a i eCommerce sustava i sa oba je povezan 
  3. u eCommerce sustavu (popust našeg Shape Core sustava)
Dynamic pricing models options

U sva tri navedena slučaja, dynamic pricing softver treba inpute, ulazne podatke koje će koristiti kao parametre u postavljenom algoritmu i koji će direktno utjecati na izračun prodajnih cijena.

Ulazni podaci i primjeri algoritama

Ulazni podaci mogu biti:

  1. interni podaci o sell-outu (primjer dynamic pricing pravila: smanji cijenu za x% ako dnevni sell-out padne ispod 10 komada);  
  2. dostupnost podataka od dobavljača (povećaj cijenu za x% ako je lager dobavljača ispod Y komada),
  3. podaci o korisnicima - geografski, demografski, bihevioralni (povećaj ili smanji cijenu x% ako je korisnik posjetio stranicu više od 5 puta u zadnjih tjedan dana) i
  4. tržišni podaci u smislu analize konkurencije i usporedbe cijena (smanji cijenu toliko da budem među 3 najpovoljnija prodavatelja na tržištu). 

Dynamic Pricing u Shape Core webshopovima

Za webshopove na Shape Core platformi omogućeno je postavljanje Dynamic Pricing algoritma koji služi za dinamičko određivanje prodajnih cijena artikala. 

Modul za dinamičko određivanje cijena razvijen je na Shape Core platformi na kojoj se izrađuju i webshopovi, stoga je integracija istog u rad postojećih webshopova znatno olakšana u odnosu na integraciju s trećim softverima. 

Model izračuna cijena, odnosno sami algoritam prilagođava se branši i zahtjevima klijenta. Zajedničkom analizom mogućnosti koje ovaj modul nudi s jedne strane, te poslovnih potreba s druge strane, dolazimo do najboljeg mogućeg algoritma. Praćenjem rezultata kroz vrijeme algoritam se dorađuje i optimizira kako bi prodajni rezultati s naglaskom na profitabilnost bili što bolji. 

Cijene koje dynamic pricing sustav izračuna moguće je na webshopu prikazati automatski ili uz odobrenje administratora webshopa, dakle trgovac ima potpunu kontrolu nad svojim cijenama. Jednako tako frekvencija izračuna i izmjena cijena postavlja se po želji trgovca. 

Preporuka: KLIKER market dynamic pricing modul za eCommerce

Što je Kliker? 

KLIKER je web-based aplikacija za tržišnu analizu, praćenje konkurencije i usporedbu cijena, koja pruža potpunu sliku tržišta na jednom ekranu u realnom vremenu.

Kliker.bizKLIKER market aplikacija

My market ekran u aplikaciji KLIKER market

Kliker je napredni softver koji nekoliko puta dnevno skuplja podatke o online ponudi na nekom tržištu za određenu kategoriju proizvoda (pr. laptopi na hrvatskom tržištu), obrađuje podatke i korisniku ih plasira na nekoliko načina: 

  • kroz My Market ekran koji služi kao napredna tražilica - proizvode je moguće pretraživati i sortirati po brojnim karakteristikama koje se prilagođavaju za svaku kategoriju proizvoda, a može ih biti i više od 30
  • kroz Dashboad koji kroz grafičke prikaze najvažnijih KPI-jeva prikazuje trendove na tržištu
  • kroz Alerts prikaz koji izlistava sve zadnje promjene na tržištu u smislu novoulistanih proizvoda, promjene cijena ili stanja na zalihama, te se također može pretraživati po trgovcu ili brandu proizvoda
  • kroz API - spajanjem preko API-ja se podaci iz Klikera mogu koristiti za daljnje kalkulacije i analize. 

Upravo zadnja opcija i velika potražnja za dynamic pricing alatima u proteklom periodu potaknula je kreatore Klikera na izradu KLIKER dynamic pricing modula za eCommerce, koji servira tržišne podatke kao inpute za izračun dinamičkih cijena. 

Podaci se nakon povezivanja putem API-ja direktno povlače iz Klikera u dynamic pricing softver, no omogućeno je i njihovo pretraživanje i analiza kroz samu Kliker aplikaciju, kao i export u Excel. Podaci se osvježavaju nekoliko puta dnevno, ovisno o kategoriji proizvoda, a moguće je i osvježavanje na zahtjev korisnika. 

Za svaki proizvod (svaki SKU sa jedinstvenom šifrom, tj. EAN kodom) moguće je dobiti čitav set podataka koji uključuje: 

  • broj trgovaca koji trenutno imaju taj proizvod u ponudi
  • najniža prodajna cijena na tržištu
  • trgovac koji ima najnižu prodajnu cijenu 
  • prosječna prodajna cijena 
  • moja trenutna pozicija na tržištu
  • podaci o akcijama
  • podaci o raspoloživosti proizvoda kod pojedinog trgovca (ima/nema na stanju)
  • ...
Dynamic pricing model

Kombinacijom tržišnih podataka dobivenih kroz Kliker s vlastitim tjednim sell-out podacima (vidi primjer na slici iznad), eCommerce tim može stvoriti odličnu bazu za dynamic pricing sustav. 

Kliker je web-based SaaS aplikacija, što znači da se istoj pristupa logiranjem kroz browser, bez ikakve instalacije ili postavljanja, uz mjesečnu pretplatu koja ovisi o broju kategorija proizvoda koje se prate i broju tržišta.

Za više informacija o Klikeru slobodno nam se obratite, rado ćemo Vas povezati s Kliker timom. 

Zaključak

Dynamic pricing budućnost je eCommercea!

  • U ovom rastućem kanalu prodaje konkurencija je sve veća i svaki trik za povećanje profitabilnosti vrlo brzo bude prihvaćen i implementiran. 
  • Dynamic pricing temelji se na softveru koji dinamički izračunava cijene proizvoda na temelju ulaznih podataka (inputa), koji mogu doći iz nekoliko izvora - iz vlastitog ERP-a, iz zero- i first-party podataka o posjetiteljima webshopa te iz vanjskih izvora poput aplikacije Kliker, koji skuplja i obrađuje tržišne podatke. 
  • Shipshape nudi dynamic pricing kao opciju za sve trgovce koji imaju webshop na Shape Core platformi.
  • Algoritam i sva pravila za izračun cijena definiraju se po želji trgovca, koji zadržava potpunu kontrolu na cijenama budući da sustav može biti u potpunosti automatiziran ili djelomično automatiziran (sustav izračunava, ali administrator odobrava cijene). 

Još eCommerce tema:

Zanimljivo?