A crisis, the causes and a solution

Why this post?

Because there are rumours spreading about a presumed “MPEG-Video collapse” and Brownian motion-like initiatives trying to remedy – in some cases by the very people who have contributed to creating the “crisis”.

Who is the author of this post?

Leonardo Chiariglione, the founder and chairman of MPEG, but I am writing in a personal capacity.

Why is MPEG important?

In its 30 years of operation MPEG has created digital media standards that have enabled the birth and continue promoting the growth of digital media products, services and applications. Here are a few, out of close to 180 standards: MP3 for digital music (1992), MPEG-2 for digital television (1994), MPEG-4 Visual for video on internet (1998), MP4 file format for mobile handsets (2001), AVC for reduced bitrate video (2003), DASH for internet streaming (2013), MMT for IP broadcasting (2013) and more. In other words, MPEG standards have had and keep on having an impact on the lives of billions of people.

How could MPEG achieve this?

Thanks to its “business model” that can be simply described as: produce standards having the best performance as a goal, irrespective of the IPR involved. Because MPEG standards are the best in the market and have an international standard status, manufacturers/service providers get a global market of digital media products, services and applications, and end users can seamless communicate with billions of people and access millions of services. Patent holders who allow use of their patents get hefty royalties with which they can develop new technologies for the next generation of MPEG standards. A virtuous cycle everybody benefits from.

Why is there a “crisis”?

Good stories have an end, so the MPEG business model could not last forever. Over the years proprietary and “royalty free” products have emerged but have not been able to dent the success of MPEG standards. More importantly IP holders – often companies not interested in exploiting MPEG standards, so called Non Practicing Entities (NPE) – have become more and more aggressive in extracting value from their IP.

I saw the danger coming and designed a strategy for it. This would create two tracks in MPEG: one track producing royalty free standards (Option 1, in ISO language) and the other the traditional Fair Reasonable and Non Discriminatory (FRAND) standards (Option 2, in ISO language). Option 1 standards, obviously less performing than Option 2 ones, would counter the “proprietary” threat and provide an incentive to produce even more effective Option 2 standards while keeping at bay excessive claims by patent holders because of the incoming Option 1 standards “competition”.

The Internet Video Coding (IVC) standard was a successful implementation of the idea – kind of. Indeed, a few years after approving AVC, IVC was found to perform better than AVC. Unfortunately 3 companies made blank Option 2 statements (of the kind “I may have patents and I am willing to license them at FRAND terms”), a possibility that ISO allows. MPEG had no means to remove the claimed infringing technologies, if any, and IVC is practically dead.

In 2013 MPEG approved the HEVC standard which provides the same quality as AVC at half the bitrate. The licensing situation is depicted in the picture below (courtesy of Jonathan Samuelsson of Divideon): of ~45 patent holders ~1/3 published their licences  and 2/3 have joined one of the 3 patent pools, one of which has not published their licence.

 I saw the threat coming and one year ago I tried to bring the matter to the attention of the higher layers in ISO. My attempts were thwarted by a handful of NPEs.

Alliance for Open Media (AOM) has occupied the void created by MPEG’s outdated (but still largely used) video compression standard (AVC), absence of competitive Options 1 standards (IVC) and unusable modern standard (HEVC). AOM’s AV1 codec, due to be released soon, is claimed to perform better than HEVC and is said to be offered royalty free.

At long last everybody realises that the old MPEG business model is now broke, all the investments (collectively hundreds of millions USD) made by the industry for the new video codec will go up in smoke and AOM’s royalty free model will spread to other business segments as well.

Can something be done?

The situation can be described as tragic. This does not mean that there is nothing left to do. I personally doubt that something will be done, though, seeing how blindfolded the industry is. As I like to say, God blinds those He wants to lose.

The first action is to introduce what I call “fractional options”. As I said, ISO envisages two forms of licensing: Option 1, i.e. royalty free and Option 2, i.e. FRAND, which is taken to mean “with undetermined licence”. We could introduce fractional options in the sense that proposers could indicate that their technologies be assigned to specifically identified profiles with an “industry licence” (defined outside MPEG) that does not contain monetary values. For instance, one such licence could be “no charge” (i.e. Option 1), another could be targeted to the OTT market etc.

The second action, not meant to be alternative to the first, is to streamline the MPEG standard development process. Within this a first goal is to develop coding tools with “clear ownership”, unlike today’s tools which are often the result of contributions with possibly very different weights. A second goal is not to define profiles in MPEG. A third goal could be to embed in the standard the capability to switch coding tools on and off.

The work of patent pools would be greatly simplified because they could define profiles with technologies that are “available” because they would know who owns which tools. Users could switch on tools once they become usable, e.g. because the relevant owner has joined a patent pool.

These are just examples of how the MPEG standard development process can be adapted to better match the needs of entities developing licences and without becoming part – God (ISO) forbid – of a licence definition process.

Is this enough?

Even if industry will decide to get their acts together and put a patch to MPEG’s business model, it is easy to anticipate that the next threat is just around the corner. But MPEG cannot have a future if it is going to pass from crisis to crisis, each of which has an inevitable “cost”.

MPEG’s problem – so far a blessing – is that it is a working group, the lowest organisational structure in ISO. MPEG’s governance is weak: if there is a need, like it happened recently, to bring problems to the attention of the decision making layers in ISO, it is necessary to cross several layers of other committees with completely different priorities and concerns, each time asking for their approval and each time getting a diluted message. Only by becoming a Technical Committee can MPEG, the forerunner of problems that other committees will experience in the years to come, stay competitive in the market.

End of the world as we know it?

The reader should not think that I am personal concerned by all this, if not intellectually. I have been running MPEG for the last 30 years serving the industry – and billions of users – and I have been blessed by professional satisfactions that few have had enjoying the collaboration of thousands of experts each driven by their own motivations, but united in their desire to make the best standards. If MPEG ends now it will be a pity, but if this is the decision of the stakeholders – the industry in MPEG – so be it.

My concerns are at a different level and have to do with the way industry at large will be able to access innovation. AOM will certainly give much needed stability to the video codec market but this will come at the cost of reduced if not entirely halted technical progress. There will simply be no incentive for companies to develop new video compression technologies, at very significant cost because of the sophistication of the field, knowing that their assets will be thankfully – and nothing more – accepted and used by AOM in their video codecs.

Companies will slash their video compression technology investments, thousands of jobs will go and millions of USD of funding to universities will be cut. A successful “access technology at no cost” model will spread to other fields.

So don’t expect that in the future you will see the progress in video compression technology that we have seen in the past 30 years.

Standard MPEG-1 MPEG-2 MPEG-4 Visual MPEG-4 AVC MPEG-H HEVC
Bitrate vs previous 25% less 25% less 30% less 60% less
Year of approval 1992 1994 1998 2003 2013

 

Posts in this thread (in bold this post)

1,508 thoughts on “A crisis, the causes and a solution”

  1. Pingback: click
  2. Pingback: buy levitra online
  3. Pingback: buy 10 mg levitra
  4. Pingback: cheap 20mg levitra
  5. Pingback: levitra coupon
  6. Pingback: levitra 20 mg
  7. Pingback: buy levitra 10mg
  8. Pingback: buy 20 mg levitra
  9. Pingback: vardenafil buy
  10. Pingback: generic levitra
  11. Pingback: 20mg levitra
  12. Pingback: vardenafil
  13. Pingback: vardenafil online
  14. Pingback: coupon vardenafil
  15. Pingback: buy 10mg levitra
  16. Pingback: vardenafil coupon
  17. Pingback: levitra 20mg
  18. Pingback: levitra generic
  19. Pingback: vardenafil prices
  20. Pingback: levitra cost
  21. Pingback: buy levitra
  22. Pingback: vardenafil 20mg
  23. Pingback: vardenafil cost
  24. Pingback: 20 mg levitra
  25. Pingback: buy levitra 20 mg
  26. Pingback: cheap 10mg levitra
  27. Pingback: levitra buy
  28. Pingback: buy 20mg levitra
  29. Pingback: cialis coupons
  30. Pingback: cheap 20mg cialis
  31. Pingback: tadalafil buy
  32. Pingback: tadalafil prices
  33. Pingback: cialis prices
  34. Pingback: buy cialis 20 mg
  35. Pingback: cheap cialis
  36. Pingback: buy 20 mg cialis
  37. Pingback: buy cialis now
  38. Pingback: tadalafil cost
  39. Pingback: coupon cialis
  40. Pingback: cheap 50mg viagra
  41. Pingback: buy 50 mg viagra
  42. Pingback: 100 mg viagra
  43. Pingback: coupon viagra
  44. Pingback: buy viagra 100 mg
  45. Pingback: viagra canada
  46. Pingback: sildenafil coupon
  47. Pingback: womens viagra
  48. Pingback: buy sildenafil
  49. Pingback: viagra buy
  50. Pingback: generic viagra
  51. Pingback: tesco viagra
  52. Pingback: female viagra
  53. Pingback: buy viagra 50mg
  54. Pingback: superdrug viagra
  55. Pingback: viagra 100mg
  56. Pingback: buy 50mg viagra
  57. Pingback: buy 100 mg viagra
  58. Pingback: viagra substitute
  59. Pingback: sildenafil buy
  60. Pingback: cheap viagra 100mg
  61. Pingback: cheap viagra
  62. Pingback: coupon vardenafil
  63. Pingback: buy levitra online
  64. Pingback: levitra 10mg
  65. Pingback: cheap levitra 10mg
  66. Pingback: 10mg levitra
  67. Pingback: 10mg levitra
  68. Pingback: levitra 10 mg
  69. Pingback: levitra online
  70. Pingback: cheap 20mg levitra
  71. Pingback: tadalafil 20mg
  72. Pingback: cialis generic
  73. Pingback: generic cialis
  74. Pingback: tadalafil generic
  75. Pingback: cialis online
  76. Pingback: buy cialis
  77. Pingback: buy cialis
  78. Pingback: tadalafil generic
  79. Pingback: cialis generic
  80. Pingback: cialis generic
  81. Pingback: cialis online
  82. Pingback: tadalafil 20mg
  83. Pingback: generic cialis
  84. Pingback: buy cialis
  85. Pingback: cialis online
  86. Pingback: cialis 20mg
  87. Pingback: buy cialis online
  88. Pingback: generic cialis
  89. Pingback: cialis online
  90. Pingback: buy cialis online
  91. Pingback: buy generic viagra
  92. Pingback: viagra 100mg
  93. Pingback: buy cialis
  94. Pingback: ABrand
  95. Pingback: none
  96. Pingback: cheap cialis
  97. Pingback: online cialis
  98. Pingback: cialis online
  99. Pingback: cialis
  100. Pingback: cialis generic
  101. Pingback: buy cheap cialis
  102. Pingback: cialis prices
  103. Pingback: generic cialis
  104. Pingback: buy brand viagra
  105. Pingback: cheap brand viagra
  106. Pingback: brand viagra
  107. Pingback: brand viagra 100mg
  108. Pingback: name brand viagra
  109. Pingback: buy cytotec
  110. Pingback: online cytotec
  111. Pingback: cytotec online
  112. Pingback: cheap cytotec
  113. Pingback: buy cheap cytotec
  114. Pingback: cytotec
  115. Pingback: cytotec induction
  116. Pingback: buy cytotec amazon
  117. Pingback: buy dapoxetine
  118. Pingback: online dapoxetine
  119. Pingback: dapoxetine online
  120. Pingback: cheap dapoxetine
  121. Pingback: dapoxetine
  122. Pingback: dapoxetine at cvs
  123. Pingback: dapoxetine reviews
  124. Pingback: dapoxetine 100 mg
  125. Pingback: buy brand cialis
  126. Pingback: cheap brand cialis
  127. Pingback: brand cialis
  128. Pingback: cialis brand only
  129. Pingback: brand cialis 5 mg
  130. Pingback: buy zovirax
  131. Pingback: zovirax pill
  132. Pingback: zovirax
  133. Pingback: online zovirax
  134. Pingback: zovirax online
  135. Pingback: cheap zovirax
  136. Pingback: buy cheap zovirax
  137. Pingback: zovirax cream
  138. Pingback: zovirax ointment
  139. Pingback: extra super cialis
  140. Pingback: retin-a
  141. Pingback: buy retin-a
  142. Pingback: online retin-a
  143. Pingback: retin-a online
  144. Pingback: cheap retin-a
  145. Pingback: buy cheap retin-a
  146. Pingback: retin-a cream
  147. Pingback: retin-a micro
  148. Pingback: buy cialis soft
  149. Pingback: online cialis soft
  150. Pingback: cialis soft online
  151. Pingback: cheap cialis soft
  152. Pingback: cialis soft
  153. Pingback: soft tab cialis
  154. Pingback: fluoxetine
  155. Pingback: buy fluoxetine
  156. Pingback: online fluoxetine
  157. Pingback: fluoxetine online
  158. Pingback: cheap fluoxetine
  159. Pingback: fluoxetine hcl
  160. Pingback: fluoxetine 20 mg
  161. Pingback: fluoxetine 20mg
  162. Pingback: what is fluoxetine
  163. Pingback: fluoxetine 10 mg
  164. Pingback: fluoxetine dosage
  165. Pingback: fluoxetine reviews
  166. Pingback: fluoxetine coupons
  167. Pingback: fluoxetine prozac
  168. Pingback: prozac fluoxetine
  169. Pingback: extra super viagra
  170. Pingback: buy viagra plus
  171. Pingback: online viagra plus
  172. Pingback: viagra plus online
  173. Pingback: cheap viagra plus
  174. Pingback: viagra plus
  175. Pingback: viagra plus 400 mg
  176. Pingback: viagra plus pills
  177. Pingback: buy zithromax
  178. Pingback: online zithromax
  179. Pingback: zithromax online
  180. Pingback: cheap zithromax
  181. Pingback: zithromax
  182. Pingback: zithromax z-pak
  183. Pingback: zithromax dosage
  184. Pingback: zithromax for cats
  185. Pingback: buy lasix
  186. Pingback: online lasix
  187. Pingback: lasix online
  188. Pingback: cheap lasix
  189. Pingback: buy cheap lasix
  190. Pingback: lasix
  191. Pingback: lasix medication
  192. Pingback: lasix side effects
  193. Pingback: lasix dosage
  194. Pingback: lasix generic
  195. Pingback: what is lasix
  196. Pingback: lasix water pill
  197. Pingback: lasix generic name
  198. Pingback: bumex vs lasix
  199. Pingback: lasix potassium
  200. Pingback: generic for lasix
  201. Pingback: warnings for lasix
  202. Pingback: iv lasix
  203. Pingback: lasix for dogs
  204. Pingback: lasix 40 mg
  205. Pingback: buy kamagra
  206. Pingback: online kamagra
  207. Pingback: kamagra online
  208. Pingback: cheap kamagra
  209. Pingback: buy cheap kamagra
  210. Pingback: kamagra
  211. Pingback: kamagra oral jelly
  212. Pingback: kamagra 100mg
  213. Pingback: kamagra jelly
  214. Pingback: kamagra store
  215. Pingback: kamagra gel
  216. Pingback: super kamagra
  217. Pingback: buy levitra
  218. Pingback: online levitra
  219. Pingback: levitra online
  220. Pingback: cheap levitra
  221. Pingback: buy cheap levitra
  222. Pingback: levitra
  223. Pingback: levitra coupon
  224. Pingback: levitra 20 mg
  225. Pingback: levitra vs viagra
  226. Pingback: levitra generic
  227. Pingback: generic levitra
  228. Pingback: levitra prices
  229. Pingback: levitra cost
  230. Pingback: buy propecia
  231. Pingback: online propecia
  232. Pingback: propecia online
  233. Pingback: cheap propecia
  234. Pingback: buy cheap propecia
  235. Pingback: propecia
  236. Pingback: does propecia work
  237. Pingback: generic propecia
  238. Pingback: propecia for sale
  239. Pingback: propecia stock
  240. Pingback: cost of propecia
  241. Pingback: propecia for men
  242. Pingback: propecia tablets
  243. Pingback: buy doxycycline
  244. Pingback: online doxycycline
  245. Pingback: doxycycline online
  246. Pingback: cheap doxycycline
  247. Pingback: doxycycline
  248. Pingback: doxycycline 100mg
  249. Pingback: doxycycline dosage
  250. Pingback: doxycycline mono
  251. Pingback: doxycycline dose
  252. Pingback: doxycycline 100 mg
  253. Pingback: fish doxycycline
  254. Pingback: buy ventolin
  255. Pingback: online ventolin
  256. Pingback: ventolin online
  257. Pingback: cheap ventolin
  258. Pingback: buy cheap ventolin
  259. Pingback: ventolin
  260. Pingback: ventolin inhaler
  261. Pingback: $15 ventolin
  262. Pingback: generic ventolin
  263. Pingback: buy metformin
  264. Pingback: online metformin
  265. Pingback: metformin online
  266. Pingback: cheap metformin
  267. Pingback: metformin
  268. Pingback: metformin 500 mg
  269. Pingback: metformin dosage
  270. Pingback: metformin lawsuit
  271. Pingback: metformin hcl
  272. Pingback: metformin problems
  273. Pingback: metformin er
  274. Pingback: what is metformin
  275. Pingback: metformin dementia
  276. Pingback: metformin xr
  277. Pingback: metformin 1000 mg
  278. Pingback: metformin uses
  279. Pingback: metformin generic
  280. Pingback: metformin dose
  281. Pingback: metformin recall
  282. Pingback: metformin diarrhea
  283. Pingback: metformin 500mg
  284. Pingback: metformin for pcos
  285. Pingback: metformin diabetes
  286. Pingback: metformin 500
  287. Pingback: metformin overdose
  288. Pingback: metformin pcos
  289. Pingback: metformin 1000mg
  290. Pingback: metformin 1000
  291. Pingback: metformin and pcos
  292. Pingback: is metformin safe
  293. Pingback: metformin 850 mg
  294. Pingback: metformina
  295. Pingback: buy synthroid
  296. Pingback: online synthroid
  297. Pingback: synthroid online
  298. Pingback: cheap synthroid
  299. Pingback: synthroid
  300. Pingback: synthroid dosage
  301. Pingback: synthroid coupon
  302. Pingback: synthroid generic
  303. Pingback: synthroid coupons
  304. Pingback: synthroid dosing
  305. Pingback: what is synthroid
  306. Pingback: generic synthroid
  307. Pingback: synthroid direct
  308. Pingback: synthroid dose
  309. Pingback: synthroid recall
  310. Pingback: synthroid dosages
  311. Pingback: buy flagyl
  312. Pingback: online flagyl
  313. Pingback: flagyl online
  314. Pingback: cheap flagyl
  315. Pingback: buy cheap flagyl
  316. Pingback: flagyl
  317. Pingback: flagyl antibiotic
  318. Pingback: flagyl dosage
  319. Pingback: flagyl and alcohol
  320. Pingback: flagyl 500 mg
  321. Pingback: flagyl for dogs
  322. Pingback: what is flagyl
  323. Pingback: flagyl dosing
  324. Pingback: flagyl 500
  325. Pingback: flagyl 400
  326. Pingback: flagyl bula
  327. Pingback: uses for flagyl
  328. Pingback: generic for flagyl
  329. Pingback: flagyl for kids
  330. Pingback: flagyl for uti
  331. Pingback: hctz
  332. Pingback: hctz side effects
  333. Pingback: hctz medication
  334. Pingback: hctz 25 mg
  335. Pingback: lisinopril/hctz
  336. Pingback: lisinopril hctz
  337. Pingback: hctz/lisinopril
  338. Pingback: diflucan
  339. Pingback: buy diflucan
  340. Pingback: online diflucan
  341. Pingback: diflucan online
  342. Pingback: cheap diflucan
  343. Pingback: buy cheap diflucan
  344. Pingback: diflucan dosage
  345. Pingback: diflucan 150 mg
  346. Pingback: antabuse
  347. Pingback: buy antabuse
  348. Pingback: online antabuse
  349. Pingback: antabuse online
  350. Pingback: cheap antabuse
  351. Pingback: buy cheap antabuse
  352. Pingback: buy clomid
  353. Pingback: clomid
  354. Pingback: online clomid
  355. Pingback: clomid online
  356. Pingback: cheap clomid
  357. Pingback: buy cheap clomid
  358. Pingback: clomid for men
  359. Pingback: clomid for women
  360. Pingback: clomid for sale
  361. Pingback: valtrex
  362. Pingback: buy valtrex
  363. Pingback: online valtrex
  364. Pingback: valtrex online
  365. Pingback: cheap valtrex
  366. Pingback: buy cheap valtrex
  367. Pingback: valtrex dosage
  368. Pingback: valtrex generic
  369. Pingback: valtrex dosing
  370. Pingback: generic valtrex
  371. Pingback: what is valtrex
  372. Pingback: cost of valtrex
  373. Pingback: valtrex website
  374. Pingback: valtrex brand name
  375. Pingback: good rx valtrex
  376. Pingback: buy female viagra
  377. Pingback: female viagra
  378. Pingback: buy prednisolone
  379. Pingback: prednisolone
  380. Pingback: cheap prednisolone
  381. Pingback: prednisolone 20 mg
  382. Pingback: methylprednisolone
  383. Pingback: prednisolone costs
  384. Pingback: prednisolone cream
  385. Pingback: cipro
  386. Pingback: buy cipro
  387. Pingback: online cipro
  388. Pingback: cipro online
  389. Pingback: cheap cipro
  390. Pingback: buy cheap cipro
  391. Pingback: cipro side effects
  392. Pingback: cipro antibiotic
  393. Pingback: cipro hc
  394. Pingback: cipro medication
  395. Pingback: cipro for uti
  396. Pingback: what is cipro
  397. Pingback: cipro dosing
  398. Pingback: cipro dosage
  399. Pingback: cipro eye drops
  400. Pingback: warnings for cipro
  401. Pingback: cipro 500 mg
  402. Pingback: cipro 500
  403. Pingback: zoloft
  404. Pingback: zoloft sertraline
  405. Pingback: buy zoloft
  406. Pingback: online zoloft
  407. Pingback: zoloft online
  408. Pingback: cheap zoloft
  409. Pingback: buy cheap zoloft
  410. Pingback: zoloft medication
  411. Pingback: zoloft dosage
  412. Pingback: zoloft generic
  413. Pingback: zoloft for anxiety
  414. Pingback: zoloft reviews
  415. Pingback: generic zoloft
  416. Pingback: generic for zoloft
  417. Pingback: what is zoloft
  418. Pingback: zoloft withdrawal
  419. Pingback: zoloft dosing
  420. Pingback: dr gunter zoloft
  421. Pingback: zoloft and alcohol
  422. Pingback: lexapro vs zoloft
  423. Pingback: zoloft weight gain
  424. Pingback: weaning off zoloft
  425. Pingback: zoloft 50 mg
  426. Pingback: dosage of zoloft
  427. Pingback: zoloft recall
  428. Pingback: sertraline zoloft
  429. Pingback: lexapro
  430. Pingback: buy lexapro
  431. Pingback: online lexapro
  432. Pingback: lexapro online
  433. Pingback: cheap lexapro
  434. Pingback: buy cheap lexapro
  435. Pingback: lexapro medication
  436. Pingback: lexapro generic
  437. Pingback: lexapro dosage
  438. Pingback: lexapro reviews
  439. Pingback: generic lexapro
  440. Pingback: what is lexapro
  441. Pingback: lexapro withdrawal
  442. Pingback: lexapro dosing
  443. Pingback: lexapro 10 mg
  444. Pingback: lexapro 5mg
  445. Pingback: lexapro overdose
  446. Pingback: lexapro vs celexa
  447. Pingback: celexa vs lexapro
  448. Pingback: lexapro half life
  449. Pingback: lexapro for pain
  450. Pingback: propranolol
  451. Pingback: buy propranolol
  452. Pingback: online propranolol
  453. Pingback: propranolol online
  454. Pingback: cheap propranolol
  455. Pingback: propranolol dosage
  456. Pingback: propranolol hcl
  457. Pingback: propranolol er
  458. Pingback: propranolol 40mg
  459. Pingback: propranolol 10 mg
  460. Pingback: propranolol 10mg
  461. Pingback: propranolol 40 mg
  462. Pingback: ampicillin
  463. Pingback: buy ampicillin
  464. Pingback: online ampicillin
  465. Pingback: ampicillin online
  466. Pingback: cheap ampicillin
  467. Pingback: ampicillin for uti
  468. Pingback: lisinopril
  469. Pingback: buy lisinopril
  470. Pingback: online lisinopril
  471. Pingback: lisinopril online
  472. Pingback: cheap lisinopril
  473. Pingback: lisinopril 10mg
  474. Pingback: lisinopril dosage
  475. Pingback: lisinopril 20 mg
  476. Pingback: lisinopril cough
  477. Pingback: what is lisinopril
  478. Pingback: lisinopril generic
  479. Pingback: lisinopril 5mg
  480. Pingback: lisinopril dosing
  481. Pingback: zestril lisinopril
  482. Pingback: lisinopril 20mg
  483. Pingback: lisinopril 40 mg
  484. Pingback: lisinopril 2.5 mg
  485. Pingback: lisinopril 10 mg
  486. Pingback: lisinopril dose
  487. Pingback: lisinopril 5 mg
  488. Pingback: nolvadex
  489. Pingback: buy nolvadex
  490. Pingback: online nolvadex
  491. Pingback: nolvadex online
  492. Pingback: cheap nolvadex
  493. Pingback: buy cheap nolvadex
  494. Pingback: nolvadex for sale
  495. Pingback: nolvadex for men
  496. Pingback: nolvadex on cycle
  497. Pingback: nolvadex dosage
  498. Pingback: nolvadex tamoxifen
  499. Pingback: nolvadex pct
  500. Pingback: trazodone
  501. Pingback: buy trazodone
  502. Pingback: online trazodone
  503. Pingback: trazodone online
  504. Pingback: cheap trazodone
  505. Pingback: trazodone 50 mg
  506. Pingback: trazodone for dogs
  507. Pingback: trazodone dosage
  508. Pingback: trazodone hcl
  509. Pingback: what is trazodone
  510. Pingback: trazodone 100 mg
  511. Pingback: trazodone overdose
  512. Pingback: trazodone generic
  513. Pingback: desyrel trazodone
  514. Pingback: trazodone 50mg
  515. Pingback: trazodone class
  516. Pingback: trazodone uses
  517. Pingback: cialis 20 mg
  518. Pingback: cialis 20
  519. Pingback: cialis pills
  520. Pingback: buy cialis online
  521. Pingback: cialis tadalafil
  522. Pingback: cialis on line
  523. Pingback: cialis 20mg
  524. Pingback: cialis.com
  525. Pingback: cialis cost
  526. Pingback: cialis canada
  527. Pingback: cialis samples
  528. Pingback: what is cialis
  529. Pingback: canadian cialis
  530. Pingback: cialis from canada
  531. Pingback: cialis for sale
  532. Pingback: cost of cialis
  533. Pingback: cialis 5mg
  534. Pingback: cialis 5 mg
  535. Pingback: cialis daily
  536. Pingback: viagra cialis
  537. Pingback: cialis medication
  538. Pingback: cialis for women
  539. Pingback: cialis sale
  540. Pingback: discount cialis
  541. Pingback: cialis or viagra
  542. Pingback: cialis website
  543. Pingback: cialis 10mg
  544. Pingback: cryptobot
  545. Pingback: cryptobot
  546. Pingback: crypto trade bot
  547. Pingback: cryptobot
  548. Pingback: cryptobot
  549. Pingback: casino real money
  550. Pingback: real money casino
  551. Pingback: parx online casino
  552. Pingback: hyper casinos
  553. Pingback: free online casino
  554. Pingback: mgm online casino
  555. Pingback: bovada casino
  556. Pingback: doubledown casino
  557. Pingback: hollywood casino
  558. Pingback: chumba casino
  559. Pingback: firekeepers casino
  560. Pingback: high 5 casino
  561. Pingback: gsn casino
  562. Pingback: gsn casino games
  563. Pingback: gsn casino slots
  564. Pingback: casino blackjack
  565. Pingback: zone online casino
  566. Pingback: real casino
  567. Pingback: las vegas casinos
  568. Pingback: casino games free
  569. Pingback: casino bonus
  570. Pingback: free online slots
  571. Pingback: lady luck
  572. Pingback: free slots games
  573. Pingback: best online casino
  574. Pingback: online gambling
  575. Pingback: slots online
  576. Pingback: online slots
  577. Pingback: real casino slots
  578. Pingback: play slots
  579. Pingback: online slot games
  580. Pingback: vegas casino slots
  581. Pingback: vegas slots online
  582. Pingback: slot games
  583. Pingback: play slots online
  584. Pingback: free slots
  585. Pingback: slots free
  586. Pingback: caesars slots
  587. Pingback: slots free games
  588. Pingback: vegas world slots
  589. Pingback: old vegas slots
  590. Pingback: slots lounge
  591. Pingback: pch slots
  592. Pingback: caesars free slots
  593. Pingback: house of fun slots
  594. Pingback: slots of vegas
  595. Pingback: vegas slots
  596. Pingback: free vegas slots
  597. Pingback: penny slots
  598. Pingback: scatter slots
  599. Pingback: buffalo gold slots
  600. Pingback: liberty slots
  601. Pingback: my vegas slots
  602. Pingback: free slots 777
  603. Pingback: slots games
  604. Pingback: slots games free
  605. Pingback: hypercasinos
  606. Pingback: gambling sites
  607. Pingback: slot machines
  608. Pingback: casino slots
  609. Pingback: casino online
  610. Pingback: casino bonus codes
  611. Pingback: casino games
  612. Pingback: online casinos
  613. Pingback: online casino
  614. Pingback: free casino
  615. Pingback: casino game
  616. Pingback: play casino
  617. Pingback: casino play
  618. Pingback: play online casino
  619. Pingback: free casino games
  620. Pingback: no deposit casino
  621. Pingback: big fish casino
  622. Pingback: Kolkata Escorts
  623. Pingback: Escorts in Kolkata

Comments are closed.