Beyond De Bruijn: fast binary logarithm of a 10-bit number

Recently I needed a method for retrieving the binary logarithm of a 10-bit number (for the curious, it was for the purpose of converting between 32-bit and 16-bit floating point numbers).

Computing the binary logarithm is equivalent to knowing the position of the highest order set bit. For instance, log2(0x1) is 0 and log2(0x100) is 8.

One well known method for fast binary logarithm is presented at Bit Twiddling Hacks. It is a two-step method where first all lower bits are set to 1 and then a De Bruijn-like sequence is used to perform a table lookup:

int fastlog2(uint32_t v)
{
    static const int MultiplyDeBruijnBitPosition[32] = 
    {
        0, 9, 1, 10, 13, 21, 2, 29, 11, 14, 16, 18, 22, 25, 3, 30,
        8, 12, 20, 28, 15, 17, 24, 7, 19, 27, 23, 6, 26, 5, 4, 31
    };

    v |= v >> 1;
    v |= v >> 2;
    v |= v >> 4;
    v |= v >> 8;
    v |= v >> 16;

    return MultiplyDeBruijnBitPosition[(uint32_t)(v * 0x07C4ACDDU) >> 27];
}

That is 12 integer operations and a table lookup.

Optimising

It should be obvious what the sequence of operations on v does: fill the integer with ones starting from the highest order bit. Here are a few examples of what happens to v at each step:

v v |= v >> 1 v |= v >> 2 v |= v >> 4 v |= v >> 8 v |= v >> 16
0x0001 0x0001 0x0001 0x0001 0x0001 0x0001
0x0002 0x0003 0x0003 0x0003 0x0003 0x0003
0x0003 0x0003 0x0003 0x0003 0x0003 0x0003
0x0004 0x0006 0x0007 0x0007 0x0007 0x0007
0x0100 0x0180 0x01e0 0x01fe 0x01ff 0x01ff
0x80000000 0xc0000000 0xf0000000 0xff000000 0xffff0000 0xffffffff

There is one obvious optimisation available: since the input is only 10-bit, the last shift operation v |= v >> 16 can be omitted because the final value was already reached.

int fastlog2(uint32_t v)
{
    static const int MultiplyDeBruijnBitPosition[32] = 
    {
        0, 9, 1, 10, 13, 21, 2, 29, 11, 14, 16, 18, 22, 25, 3, 30,
        8, 12, 20, 28, 15, 17, 24, 7, 19, 27, 23, 6, 26, 5, 4, 31
    };

    v |= v >> 1;
    v |= v >> 2;
    v |= v >> 4;
    v |= v >> 8;

    return MultiplyDeBruijnBitPosition[(uint32_t)(v * 0x07C4ACDDU) >> 27];
}

10 instructions instead of 12. Not really amazing, but worth mentioning.

Optimising more?

Could we do better? Now the last line is v |= v >> 8; and it is only useful to propagate the 9th and 10th bits to positions 1 and 2. What happens if we omit that line? Let’s see:

  • For most values of v, the expected value is obtained.
  • For values of v with a highest order bit at 9th position, 0x1fe could be obtained instead of 0x1ff.
  • For values of v with a highest order bit at 10th position, one of 0x3fc, 0x3fd or 0x3fe could be obtained instead of 0x3ff.

The list of possible output values would therefore be 0x1, 0x3, 0x7, 0xf, 0x1f, 0x3f, 0x7f, 0xff, 0x1fe, 0x1ff, 0x3fc, 0x3fd, 0x3fe, 0x3ff. What happens to these values when multiplying them with the De Bruijn sequence? Let's see:

v v * 0x07C4ACDDU) >> 27
0x1 0
0x3 2
0x7 6
0xf 14
0x1f 30
0x3f 29
0x7f 27
0xff 23
0x1fe 15
0x1ff 16
0x3fc 30
0x3fd 31
0x3fe 0
0x3ff 1

Damn! Two values are colliding. It looks like we cannot omit the last line after all.

Beyond De Bruijn

Let’s give another try at the problem. Usually De Bruijn sequences are built using either nontrivial algorithms, or brute force. Maybe we could find another sequence that has no collision? Or a sequence that is not a De Bruijn sequence but that works for our problem?

Well, let’s just brute force!

(2 seconds later)

int fastlog2(uint32_t v)
{
    static const int MagicTable[16] = 
    {
        0, 1, 2, 8, -1, 3, 5, 9, 9, 7, 4, -1, 6, -1, -1, -1
    };

    v |= v >> 1;
    v |= v >> 2;
    v |= v >> 4;

    return MagicTable[(uint32_t)(v * 0x5a1a1a2u) >> 28];
}

Down to 8 instructions instead of 12. And the lookup table is now half the size!

Conclusion

It is possible for multiply-and-shift techniques similar to the De Bruijn sequence algorithm to exist for a larger set of problems. Brute forcing the search is a totally valid method for 32-bit multiplication.

The code used for this article is included in the attached file.

  • Posted: 2012-04-03 23:15 (Updated: 2012-04-04 10:35)
  • Author: sam
  • Categories: optim c code c++

Attachments (1)

Download all attachments as: .zip

Comments

1. anonymous -- 2012-05-26 05:30

Not to spoil the fun, but bsr can do what you are doing much faster. GCC even has a builtin for it namely, builtin_clz.

2. sam -- 2012-05-27 13:32

@anonymous: Yes, you are right. I hope you will agree to the pedagogical value of the example nonetheless.

3. jilles -- 2012-11-11 16:59

Actually, on Intel Atom and AMD K8, BSR is very slow and the example may be faster in inner loops. However, even on such processors, BSR may be better because less cache space (instruction as well as data) is used.

325. subanal -- 2016-11-27 07:00

iUQr2d Thank you, I ave been seeking for details about this subject for ages and yours is the best I ave found so far.

394. XRumerTest -- 2017-04-01 14:51

Hello. And Bye.

398. XRumerTest -- 2017-05-08 04:44

Hello. And Bye.

399. lucy ann -- 2017-05-09 15:32

NYZj6K Really informative blog article. Really Cool.

400. Jessica Barden -- 2017-11-13 14:27

I am doing a lengthy research on binary logarithm via "UK Essay Help":https://www.writingbunch.co.uk Your write up helped me in gathering information.

401. anonymous -- 2017-11-28 07:33

We should give another attempt to the issue. As a rule, De Bruijn successions are constructed utilizing either nontrivial calculations or savage power. Possibly we could discover another arrangement that has no impact? Or, on the other hand, a succession that isn't a De Bruijn grouping however that works for our concern?

Web Source: https://www.groovyessays.co.uk/

402. anonymous -- 2017-11-28 12:26

You join the latest free online mozilla firefox free download latest version and i sure you create the best speed to downloading just click here https://foxdownload.org most people excited to join the free firefox download online you upgrade your old browser and have the best browsing.

403. anonymous -- 2018-01-13 06:38

<a href="https://www.test.com">test</a>

404. Mike -- 2018-01-13 06:42

I have read the post, you have posted very nice tutorial which i like reading. I have got information which i did not know before. I will come back to read more similar articles. Buy sticker roll http://www.rollstickersco.com/

405. Ramon -- 2018-01-13 08:11

This is a great educational post. I am impressed to see the article you have posted really found it very good to read. I have learned a lot which i did not know before. Buy sticker printing from http://www.astickerprinting.co.uk/

406. Andre -- 2018-02-05 21:37

I almost went crazy with so many numbers, but I understood the explanation hahaha https://futeboltrading.com/betmotion/

407. Amanda Johnson -- 2018-03-03 02:34

You should check different traps to register the log2 and consider utilizing the MSR get together direction on the off chance that you are on x86(_64). It gives you the record of the most noteworthy set piece, which is precisely what you require.

UK Dissertation Help

408. anonymous -- 2018-03-20 13:34

What a amazing post shared here. I really love this website, I would like to say thanks for sharing such great post. I would like to say bundle of thanks for sharing. C9060-528

409. R Programming Assignment Assistance -- 2018-03-26 12:49

I personally like your post, you have shared good article. It will help me in great deal. <a href="https://rprogramminghelp.xyz/">R Programming Assignment Assistance</a>

410. Statistics Homework Help -- 2018-03-26 12:50

This is really great work. Thank you for sharing such a useful information here in the blog. <a href="https://statisticshelponline.xyz/">Statistics Homework Help</a>

411. Operations Research Assignments help -- 2018-03-26 13:45

This was a great and interesting article to read. I have really enjoyed all of this very cool information http://www.theoperationsmanagement.com/operations-research-3147

412. Sociology Assignment Help -- 2018-03-26 13:46

My friend recommended this blog and he was totally right keep up the good work http://www.sociologyassignments.com/

413. anonymous -- 2018-05-10 20:26

I am really poor in mathematics but, after started following your website I learned a lot about math subject. The tricks which you have posted in custom writing service reviews blog have made me to visit your blog. After visiting your blog I came to know the beauty of this subject and learned tricks to solving problems.

414. Scott Stevens -- 2018-05-17 11:18

This is an extraordinary instructive post. I am awed to see the article you have posted extremely thought that it was great to peruse. I have taken in a great deal which I didn't know previously.<a href="https://www.writemyessays.org.uk/essay-writing-service.php">Cheap Essay Writing Service UK</a>

415. anonymous -- 2018-06-30 13:25

Excellent article. Very interesting to read. I really love to read such a nice article. https://arynews.tv/en/category/pakistan-elections-2018/

416. Francesca Godfrey -- 2018-07-02 12:49

If you had been hoping for an elegant mathematical formulation to describe them or theorem to provide them or something comparable, I suppose this would require profound insight into range concept and possibly different fields that are beyond my skillset. If I wherein to make a wild wager I would guess they may be produced by means of cellular automata. This isn't always an answer why? On a rigorous base, however, an attempt to intuitively recognize why it really works and why it works nicely so that you can use it with self-belief. Essay Writing Service UK

417. anonymous -- 2018-07-06 07:00

Students often feel issues in writing assignment, so to make students comfortable in java assignment we help them to write their assignments. If ever you feel any problem in writing something you can visit our website Java Assignment Help.If you want help in writing assignment than contact our experts. https://www.allassignmenthelp.com/java-assignment-help.html

418. anonymous -- 2018-07-11 12:00

Fantastic blog! Do you have any tips and hints for aspiring writers? I’m planning to start my own website soon but I’m a little lost on everything. Would you propose starting with a free platform like WordPress or go for a paid option? There are so many options out there that I’m completely overwhelmed .. Any suggestions? Many thanks! como conquistar o ex http://casamentorestaurado.info/

419. anonymous -- 2018-07-12 14:03

I've had a mental obstacle for a decent 5 years and this was the principal thing that started my imagination in, well, five years lol. I quit composing 500 pages into a novel (that will require a considerable measure of altering lol) that is a piece of a set of three I have sketched out in detail. Actually the peak of the book, and I just.... couldn't continue onward. I compose a considerable measure for school/work yet not in an inventive sense. https://www.freshessays.co.uk/

420. anonymous -- 2018-07-12 14:14

Impressive web site, Distinguished feedback that I can tackle. I am moving forward and may apply to my current job as a pet sitter, which is very enjoyable, but I need to additional expand. Regards. crossbowarticles.com

421. anonymous -- 2018-07-12 14:14

Impressive web site, Distinguished feedback that I can tackle. I am moving forward and may apply to my current job as a pet sitter, which is very enjoyable, but I need to additional expand. Regards. <a href='http://www.crossbowarticles.com'>crossbowarticles.com</a>

422. anonymous -- 2018-07-12 14:15

Impressive web site, Distinguished feedback that I can tackle. I am moving forward and may apply to my current job as a pet sitter, which is very enjoyable, but I need to additional expand. Regards. crossbowarticles.com http://www.crossbowarticles.com

423. anonymous -- 2018-07-14 14:18

This is really a nice and informative, containing all information and also has a great impact on the new technology. Thanks for sharing it <a href='http://www.subicevac.com'>Subi Cevac</a>

424. anonymous -- 2018-07-14 14:18

This is really a nice and informative, containing all information and also has a great impact on the new technology. Thanks for sharing it Subi Cevac http://www.subicevac.com

425. anonymous -- 2018-07-15 12:55

I have bookmarked your blog, the articles are way better than other similar blogs.. thanks for a great blog! <a href='https://www.youtube.com/watch?v=imiGL2YS2uo'>a course in miracles</a>

426. anonymous -- 2018-07-16 13:48

Super-Duper site! I am Loving it!! Will come back again, Im taking your feed also, Thanks. a course in miracles https://acim-online-video.net/

427. aD -- 2018-07-18 07:54

The information you have posted is very useful. The sites you have referred was good. Thanks for sharing.. https://acimcentre.org/ https://acimcentre.org/

428. anonymous -- 2018-07-18 13:41

I would like to say that this blog really convinced me to do it! Thanks, very good post. <a href='https://www.youtube.com/channel/UCP9Gw00CldPUmiu43y7fdWw'>ucdm</a>

429. William -- 2018-07-19 10:19

Custom Deluxe Boxes specialize in designing custom product boxes of all styles, sizes and materials. We are known as the manufactures of best custom product boxes in USA and Canada. Our team has gained extensive experience by working for different manufacturers, companies and brands. We have helped thousands of our clients to be successful by giving the right look to their product packaging. https://www.dukepackaging.com/

430. anonymous -- 2018-07-20 09:34

Thanks for this great post, i find it very interesting and very well thought out and put together. I look forward to reading your work in the future. click this http://www.narutocrisis.com

431. anonymous -- 2018-07-22 06:53

The information you have posted is very useful. The sites you have referred was good. Thanks for sharing... <a href='http://www.hepburnandhemingway.com/'>browse this site</a>

432. anonymous -- 2018-07-22 09:11

Thank you for some other informative blog. Where else could I get that type of information written in such an ideal means? I have a mission that I’m just now working on, and I have been at the look out for such information. discover here http://www.annusit.com/

433. anonymous -- 2018-07-24 07:27

Wonderful article, thanks for putting this together! This is obviously one great post. Thanks for the valuable information and insights you have so provided here. Lebensversicherung auflösen https://hasso24.de/

434. anonymous -- 2018-07-28 12:51

useful information on topics that plenty are interested on for this wonderful post.Admiring the time and effort you put into your b!.. Mon Bazar http://www.monbazar.ca

435. anonymous -- 2018-07-29 09:18

That is the excellent mindset, nonetheless is just not help to make every sence whatsoever preaching about that mather. Virtually any method many thanks in addition to i had endeavor to promote your own article in to delicius nevertheless it is apparently a dilemma using your information sites can you please recheck the idea. thanks once more. Ottawa Distribution Services http://www.ottawadistributionservices.ca

436. anonymous -- 2018-07-29 15:33

You know your projects stand out of the herd. There is something special about them. It seems to me all of them are really brilliant! Sharrard Law http://www.sharrardlaw.com

437. anonymous -- 2018-07-30 12:11

All the contents you mentioned in post is too good and can be very useful. I will keep it in mind, thanks for sharing the information keep updating, looking forward for more posts.Thanks a course in miracles https://acourseinmiraclesnow.com/

438. anonymous -- 2018-07-31 13:53

You have done a great job on this article. It’s very readable and highly intelligent. You have even managed to make it understandable and easy to read. You have some real writing talent. Thank you. a course in miracles https://miracleshome.org/

439. anonymous -- 2018-08-02 12:07

I’ve been searching for some decent stuff on the subject and haven't had any luck up until this point, You just got a new biggest fan!.. Primeworld District Lapu Lapu http://primeworlddistrict.com/

440. anonymous -- 2018-08-05 12:11

To score good marks in their college and university, they can avail our excellent services. Our assignment experts can write complicated <a href="https://www.makemyassignments.com/">Online Assignment Help</a> as they are well-versed with every academic topic.

441. anonymous -- 2018-08-06 17:56

I am hoping the same best effort from you in the future as well. In fact your creative writing skills has inspired me. Transfer Super 8 Film to DVD https://sflmediatransfer.com

442. infonicnisha@gmail.com -- 2018-08-11 11:22

If students are getting knowledge in the Singaporean university and want to get a higher score in your assignment then worry no more, come at StudentsAssignmentHelp.com and take our Assignment Help Singapore services.

Check Here: https://www.studentsassignmenthelp.com/sg/

443. anonymous -- 2018-08-19 18:10

Your blog website provided us with useful information to execute with. Each & every recommendations of your website are awesome. Thanks a lot for talking about. time bazar chart

444. dodopackaging.com@gmail.com -- 2018-09-14 14:25

Hi i am from candle boxes wholesale Dodo Packaging provides high-quality printing solution to their customers. Provide top quality wholesale custom boxes with packaging. Free design and shipping all over the world with 24/7 customer support.

custom boxes with logo

445. alyssacaroline -- 2018-10-03 11:04

Achievement in administration requires learning as quick as the world is evolving. I have discovered that as long as I hold quick to my convictions and qualities - and pursue my own ethical compass www.TrueEssayHelp.co.uk then the main desires I have to satisfy are my own. I have data which I didn't know previously. I will return to peruse more comparable articles. https://www.trueessayhelp.co.uk

446. anonymous -- 2018-10-05 12:01

Je vous remercie de l'information! Je cherchais et ne pouvait pas trouver. Vous me aidé! http://1800liveperson.com/usps/

447. anonymous -- 2018-10-19 19:23

I can set up my new idea from this post. It gives in depth information. Thanks for this valuable information for all <a href="https://www.dukepackaging.com/custom-boxes/custom-popcorn-boxes-usa/">More Details</a>

448. anonymous -- 2018-10-21 17:55
449. anonymous -- 2018-11-05 06:44

Hey really such a amazing post dear. https://sudokuonlineplay.net/

450. upsers.com -- 2018-11-19 07:39

United Parcel Service, Inc. is a logistics and package delivery company, which provides supply chain management services.

https://upserslogin.xyz/

451. anonymous -- 2018-11-22 17:09

Thanks for sharing your thoughts and ideas on this one. Please keep posting about such articles as they really spread useful information. Thanks for this particular sharing. I hope it stays updated.

https://www.theacademicpapers.co.uk/phd-dissertation-help.php

452. Jasmine Freeman -- 2018-11-23 08:06

Students find it tough to write and submit their essay papers on time. And in those stressful conditions, they ask different sources, Academic Writing Services UK . Fortunately, with our online writing company, all they need is to discuss their writing requirements with us where we deliver the top quality content at a very quick pace.

453. anonymous -- 2018-11-26 12:48

Interesting topic for a blog. I have been searching the Internet for fun and came upon your website. Fabulous post. Thanks a ton for sharing your knowledge! It is great to see that some people still put in an effort into managing their websites. I'll be sure to check back again real soon. look at more info http://nwnjpeace.org/

454. Mickie -- 2018-11-26 14:14
455. anonymous -- 2018-11-27 09:17

Your blog provided us with valuable information to work with. Each & every tips of your post are awesome. Thanks a lot for sharing. Keep blogging, click here http://www.floridabusinessbroker.org/

456. anonymous -- 2018-11-29 07:36

This article gives the light in which we can observe the reality. This is very nice one and gives indepth information. Thanks for this nice article. JB Records http://www.jbirdrecords.com/

457. anonymous -- 2018-12-05 02:41

Keep up the excellent work !! Lovin' https://happywheelsnew.com

458. anonymous -- 2018-12-09 05:49

This blog is so nice to me. I will keep on coming here again and again. Visit my link as well.. Max Beltoon https://www.maxbeltoon.com/

459. anonymous -- 2018-12-09 11:35

nice post, keep up with this interesting work. It really is good to know that this topic is being covered also on this web site so cheers for taking time to discuss this! Ichbin Christ http://www.ichbinchrist.net/

460. anonymous -- 2018-12-10 12:59

This is my first time i visit here. I found so many interesting stuff in your blog especially its discussion. From the tons of comments on your articles, I guess I am not the only one having all the enjoyment here! keep up the good work Explore Capitola http://www.explorecapitola.com/

461. anonymous -- 2018-12-26 08:00

please use this website. https://freeeshopcodes.home.blog/

462. anonymous -- 2019-01-08 11:27

Thank you for such a well written article. It’s full of insightful information and entertaining descriptions. Your point of view is the best among many. Digital X-ray Solution http://digitalxraysolution.com

463. kaizen -- 2019-01-10 05:46

I regularly visit your site and find a lot of interesting information. Not only good posts but also great comments. Thank you and look forward to your page growing stronger. https://subway-surfers.online

464. anonymous -- 2019-01-10 10:13

Thank you for helping people get the information they need. Great stuff as usual. Keep up the great work!!! Wordzilla http://www.wordzilla.org

465. anonymous -- 2019-01-18 13:04

Thanks for sharing this. keep sharing with us. https://eventeca.com/laptop-hire

466. katyciarawriter -- 2019-01-24 02:17

Thanks for sharing your thoughts and thoughts in this one. Please preserve posting approximately such articles as they sincerely unfold beneficial data. Thanks for this unique sharing. I wish it stays up to date. Real Dissertation Help Online

467. katedaisy -- 2019-01-24 03:15

I was checking continuously this blog and I'm impressed! Very useful information particularly the last part, I care for such info a lot. router login

468. beatrixkohn -- 2019-02-02 07:57

If you want a custom essay that is written professionally and can help you to score good marks, we can help you. Our essays assist you in making a good impression on the teacher. https://www.expertwriters.co.uk/services/

469. anonymous -- 2019-02-12 05:59

I have read a lot of articles and this is the most satisfactory article. It has very well exploited the problem. http://happyroom.online

470. Alexandre -- 2019-02-18 10:48

When a student intends to buy a research paper from our online custom writing service; he is entitled to get a well researched and quality oriented paper with all his instructions https://www.onlineessaywriters.co.uk/service/research-paper/

471. anonymous -- 2019-02-22 17:37

Nice to see the detail for my blogs. See the fashion stream on https://astyletips.com/indian-party-wear-salwar-kameez/ and Mehr-un-Nisa Safdar wedding with husband Raheel Munir Pictures collection https://newfashionelle.com/mehr-un-nisa-wedding-raheel-munir-pictures/ and Hollywood Actress Scarlett Johansson Family Pictures https://styletips.ca/scarlett-johansson/ online.

472. tamsi -- 2019-02-24 09:36

It is basic that we read blog entry painstakingly. I am as of now done it and find this post is truly astonishing. Bruce https://unexpected-truelove.blogspot.com/

473. tams -- 2019-03-04 22:03

Really great post. I just discovered your web journal and needed to say that I have truly delighted in perusing your blog entries. Any way I'll be subscribing to your food and I trust you post again soon. Huge much obliged for the helpful information. Dawe http://4eva-sylvia.blogspot.com/

474. iamasdfaasdfmandadfahope@gmail.coma -- 2019-03-11 19:47

Keep updating I love to read such a great study on this platform which helps me to enhance my knowledge https://www.customdeluxeboxes.com/ is the top quality website I have ever followed. Many thanks.

475. anonymous -- 2019-03-18 17:31

Immediately the following web-site might glimmer recognition amongst the majority of blog plus site-building consumers, because of meticulous discussions and also product reviews. VIP Financing Solutions Reviews

476. anonymous -- 2019-03-24 12:24

Is it okay to post part of this on my website basically post a hyperlink to this webpage? infrared light therapy devices https://www.brilliantlighttherapy.co.uk/

477. anonymous -- 2019-03-24 12:24

Is it okay to post part of this on my website basically post a hyperlink to this webpage? infrared light therapy devices https://www.brilliantlighttherapy.co.uk/

478. kingroot pc -- 2019-03-26 08:42

https://kingrootappx.com/kingroot-pc/ After completion of rooting, then the mobile automatically restarts, and successfully rooted message pop-ups on the screen.

479. www.walgreenslistens.com -- 2019-03-26 08:57

The Walgreens of America is one of the biggest pharmacy chains in the US. It is the second-largest pharmacy store chain in the United States behind CVS Health.

http://storesurvey.info/www-walgreenslistens-com/

480. anonymous -- 2019-04-03 08:50

Je vous remercie de l'information! Je cherchais et ne pouvait pas trouver. Vous me aidé! https://customerservicenumber.mobi/upsers-com-login-guide/

481. anonymous -- 2019-04-03 18:19

I feel very grateful that I read this. It is very helpful and very informative and I really learned a lot from it. https://www.myessaywriter.net/

482. titanium rings -- 2019-04-04 04:48

Computing the binary logarithm is equivalent to knowing the position of the highest order set bit. https://www.pinterest.com/findurings0617/titanium-rings/ titanium rings

483. rainbowpeaches -- 2019-04-04 11:46

Want to stay alive and happy in Dubai? If yes, escorts Dubai couples will make your wild dreams come true. It is to note that escort services are available for both men and women. There is plenty of agencies running to offer escort services and will make you meet your favorite girls easily. For having a great time in Dubai, you must enjoy the companionship of Indian Dubai Escorts by following rainbowpeaches.com https://www.rainbowpeaches.com/indian-escorts-dubai

484. anonymous -- 2019-04-06 14:00

If more people that write articles really concerned themselves with writing great content like you, more readers would be interested in their writings. Thank you for caring about your content.

485. anonymous -- 2019-04-06 14:02

If more people that write articles really concerned themselves with writing great content like you, more readers would be interested in their writings. Thank you for caring about your content. Investoid http://www.investoid.com

486. anonymous -- 2019-04-12 12:10

It isn't commonsense to endeavor to peruse it. There are typically 2 such records and their length is fixed. The blog records are basic amid a recuperation from an accident. https://hiretablets.co.uk/event-ipad-hire

487. anonymous -- 2019-04-13 11:47

Its a great pleasure reading your post.Its full of information I am looking for and I love to post a comment that "The content of your post is awesome" Great work. hunaidinstitute.com http://www.hunaidinstitute.com

488. Susanne McGuire -- 2019-04-16 08:17

Get the best coursework writing service for students. Just hire coursework writers of students coursework help at a reasonable price. Our coursework writers are available 24*7 for solving queries of the students https://www.doneessays.co.uk/coursework-help-uk.php

489. Dubai Escorts 55 -- 2019-04-16 12:46

If you are really looking for an actual value escort girl for the price, then we assure you that you will never be disappointed by these Dubai Escorts. The premium quality of agency girls and the dedication to your satisfaction is the essential key to the popularity of ours. In their escort agency directory, you can have real college girls, former, current or struggling models too. Working women and married ladies are also can be found over here. You do not need to worry about privacy as all your details which you have shared with us like your email address or contact no is 100% safe to them. https://www.dubaiescorts55.me/

490. Mike Rooney -- 2019-04-19 16:39

I found your this post while searching for some related information on blog search...Its a good post. https://www.celebsmoviejackets.com/matt-bomer-doom-patrol-negative-man-coat

491. anonymous -- 2019-04-24 09:47

Wow!! It's a really great experience shearing with us. I like your post, it's a really interesting.Ready to know your free daily career horoscope https://www.horoscopelogy.com/us/horoscope/career/

492. anonymous -- 2019-04-24 10:37

It's an awesome site, thank you for it. Anyway, I also have my own blog. Please kindly check it here ->https://bit.ly/2GiXO4v

493. anonymous -- 2019-04-25 09:04

Instagram is available for free on iOS and Android devices. Get start with instagram video downloader now. https://instavideo-downloader.com

494. anonymous -- 2019-05-01 07:57

Great post I would like to thank you for the efforts you have made in writing this interesting and knowledgeable article. G-Suite https://www.ewallhost.com/

495. anonymous -- 2019-05-04 10:00

https://guestexperiencefeedback.com/ Os doy las gracias por la información! Yo estaba buscando y no podía encontrar. Usted me ayudó!

496. anonymous -- 2019-05-08 07:03
497. anonymous -- 2019-05-08 07:16

Interesting post! I really amazed to read the great information. You have shared the best quality stuff in the content of the post. thank you so much for such an awesome blog post! https://proeducationtips.blogspot.com

498. anonymous -- 2019-05-09 11:58

i am looking for this kind topic and http://cheapwordpresswebhosting.net/ finally, I got it to thank once again for making this type of post. As your

499. anonymous -- 2019-05-11 09:53

Fascinating post! I truly stunned to peruse the incredible data. You have shared the best quality stuff in the substance of the post. much thanks to you such a great amount for such an amazing blog entry!

harvard reference generator

500. Expert Writers -- 2019-05-18 11:22

If you want a custom essay that is written professionally and can help you to score good marks, we can help you. Our essays assist you in making a good impression on the teacher. https://www.expertwriters.co.uk/writing/essay-services

501. anonymous -- 2019-05-19 09:55

You are providing very technical informative post. How to parse a game from a website like https://cupcake2048.com/.

502. anonymous -- 2019-05-21 05:42

I just couldn't depart your website prior to suggesting that I really enjoyed the standard info a person provide for your visitors? Is gonna be back often to check up on new posts .https://mediaonemarketing.com.sg/seo-services-singapore/

504. James -- 2019-05-25 13:36

If you want a custom essay that is written professionally and can help you to score good marks, we can help you. Our essays assist you in making a good impression on the teacher. https://www.expertwriterz.co.uk/writing/essay-services

505. anonymous -- 2019-05-26 14:54

I'd prefer someone's area. It happens to be superior to monitor all people verbalize in the heart and soul combined with readability within this theme important spot tend to be quickly diagnosed. https://gecey.com/24-inch-tv/

506. singapore staycation -- 2019-05-29 16:53

Incredible! This blog looks exactly like my old one! It's on a totally different topic but it has pretty much the same layout and design. Wonderful choice of colors<https://robertsonquay.intercontinental.com/offers>

507. anonymous -- 2019-05-31 08:56

This post is extremely easy to peruse and acknowledge without forgetting any subtle elements. Incredible work! You may check our website also 123.hp.com/envy 5540

508. brilliant writers -- 2019-06-01 12:59

When Brilliant Writers are there you do not have to run away from the fear of composing essay. We are there to assist you with your every essay writing need and help you buy the best services. https://www.brilliantwriters.co.uk/services

509. Johan Smith -- 2019-06-05 05:46

Thanks for sharing this piece of information. I really enjoyed it.nice excellent. https://happywheels3d.io

510. anonymous -- 2019-06-11 13:20

howdy, your websites are really good. I appreciate your work. Chicago Periodontist https://loopperio.com/

515. anonymous -- 2019-06-12 12:38

This is a brilliant blog! I'm very happy with the comments!.. Kopp Dental https://www.koppdental.com/

516. Ads on Facebook -- 2019-06-13 07:04

It’s onerous to find knowledgeable individuals on this subject, but you sound like you know what you’re talking about! Thanks https://www.techwyse.com/blog/social-media-marketing/the-future-of-digital-marketing-is-social-a-quick-insight/

517. anonymous -- 2019-06-13 11:06

Merely a smiling visitant here to share the love (:, btw outstanding style. haulage https://www.amazon.de/Europa-road-eu-Europa-Road/dp/B07NTWGTDV

518. anonymous -- 2019-06-13 14:00

Thanks for sharing this useful info.. international road transportation https://www.amazon.de/Europa-road-eu-Europa-Road/dp/B07NTWGTDV

519. anonymous -- 2019-06-15 10:23

This blog is so nice to me. I will keep on coming here again and again. Visit my link as well.. haulage http://gazdasagportal.hu/index.php/kornyezetkimelo-megoldasok-a-nemzetkozi-szallitmanyozasban/

520. anonymous -- 2019-06-15 11:35

Genius Writer UK is a platform where you find best, eminent, genius and professional writers with an experience of many years in writing field that are capable enough to deliver the top-notch content that meets your academic requirements. Students at all academic levels need best quality writing services whether they are master to Ph.D. level students or college graduates. Genius Writer UK is obliged to take the responsibility to provide their best quality professional services in academic writing to all the clients not only in the UK but worldwide.

https://www.geniuswriters.co.uk/

521. anonymous -- 2019-06-15 15:06

This is such a great resource that you are providing and you give it away for free. international road transportation http://gazdasagportal.hu/index.php/kornyezetkimelo-megoldasok-a-nemzetkozi-szallitmanyozasban/

522. anonymous -- 2019-06-16 18:18

This is a great inspiring article.I am pretty much pleased with your good work.You put really very helpful information... https://maybomhangphu.com/ https://maybomhangphu.com/

523. anonymous -- 2019-06-17 12:56

Nice Article Website in Australia https://www.thesisbuddy.com/services

524. anonymous -- 2019-06-18 12:18

We don’t work just 8 hours, we are available round the clock. Our support teams work in rotating shifts to make sure your queries are addressed irrespective of at what time of the day you ask for our guidance related to https://www.expertwriterz.co.uk

525. anonymous -- 2019-06-19 15:22

Its a great pleasure reading your post.Its full of information I am looking for and I love to post a comment that "The content of your post is awesome" Great work. Michael J. https://travellers.willtofly.com/

526. anonymous -- 2019-06-21 06:34

really cool, mate. thanks http://www.caramembuatwebsiteku.com

527. alliesmith -- 2019-06-22 10:10

I think your article is valuable for a couple, individuals, like, me. I believe you'll constantly convey distinctive first class articles. http://www.riyapatel.in/ http://www.rimjhimkhanna.in/

528. anonymous -- 2019-06-22 12:25

At all academic levels, different tasks have been assigned to the students related to different subjects that a student cannot focus on every subject to generate the quality homework that meets their academic level, which seems to be frustrating. However, it is difficult to manage a job along with the studies in UK but technology has eased the lives of many and we the Genius Writers UK facilitate you in your homework tasks. Students just have to buy our services to get their homework done by our experts.

https://www.geniuswriters.co.uk/writing/homework-writing/

529. Expertwriterz -- 2019-06-25 12:34

Today students need to juggle up assignments, tests, social life and family time altogether. It has turned out extremely tough to get so much handled with perfection. Since college professors tend to establish high demands for their classes, with a belief that students can easily cope with all those requirements. However, students for coming up with the entire home assignment, need to either sacrifice their leisure time for studying harder or finish the work recklessly. https://www.expertwriterz.co.uk/writing/assignment/

530. anonymous -- 2019-06-25 16:20

Super-Duper site! I am Loving it!! Will come back again, Im taking your feed also, Thanks. Five Star Complete Restoration https://fivestarindy.com

531. iamkellydimarco@gmail.com -- 2019-06-27 08:47

Good law coursework help is not always available at affordable rates, as most of the writing companies would overcharge the inexperienced students. For saving your hard-earned cash and availing good value for money, contact oxbridge essay help uk. Our offers are built around the needs of students new to the challenges of academic writing.

532. meldaorders@gmail.com -- 2019-06-28 11:10

Nursing Paper Writing Services We focus on meeting all the needs of our clients by offering them with a reliable Nursing paper writing services and delivering it on time. https://www.meldaresearch.com/5099custom-nursing-essay-writers/

533. anonymous -- 2019-06-29 12:16

When Brilliant Writers are there you do not have to run away from the fear of composing essay. We are there to assist you with your every essay writing need and help you buy the best services. https://www.brilliantwriters.co.uk/services/essay-writing

534. anonymous -- 2019-06-29 18:09

I wanted to thank you for this great read!! I definitely enjoying every little bit of it I have you bookmarked to check out new stuff you post. antikelifinder.com https://antikelifinder.com/

535. anonymous -- 2019-07-01 08:23

We are among the best online companies providing affordable custom research paper writing services. When you<a href="https://researchpapers247.com/purchase-customized-research-paper/"> purchase custom research paper</a> and <a href="https://researchpapers247.com/"> buy pre written research papers</a> you get the services of experts and specialists in your field.

536. anonymous -- 2019-07-02 07:48

Great article with excellent idea!Thank you for such a valuable article. I really appreciate for this great information.. data eraser software https://clarabyte.com/products/clarawipe-home

537. Genius Writers -- 2019-07-02 11:28

Our professionals assure you the number of best quality services and help you in assignment writing, which is one of our major fortes because we are specialized in generating unique and quality assignments. While delivering the best quality services around the clock, we are in the good books of our precious customers owing to the following reasons: https://www.geniuswriters.co.uk/writing/assignment-writing

538. anonymous -- 2019-07-05 19:40

Ich danke Ihnen für die Information! Ich war auf der Suche nach und konnte nicht finden. Du hast mir geholfen! <a href="https://numberforliveperson.com/target/">target customer service</a>

539. anonymous -- 2019-07-05 19:41
540. anonymous -- 2019-07-06 17:29

i am always looking for some free stuffs over the internet. there are also some companies which gives free samples. taroko park https://www.islandlifetaiwan.com/tours/taroko-gorge-tour/

541. Brilliantwriters -- 2019-07-08 12:47

Brilliant Writers help its students with a qualified team of writers who leaves no stone unturned to add excellence in a paper while showing articulate academic writing style in UK. https://www.brilliantwriters.co.uk/

542. anonymous -- 2019-07-11 12:33
543. anonymous -- 2019-07-14 09:46

Thank you for helping people get the information they need. Great stuff as usual. Keep up the great work!!! the fractal farm http://www.thefractalfarm.net

544. anonymous -- 2019-07-15 12:39

Superbly written article, if only all bloggers offered the same content as you, the internet would be a far better place.. credit card debt bankruptcy http://creditcarddebtbankruptcy.com

545. anonymous -- 2019-07-17 14:32

This is really a nice and informative, containing all information and also has a great impact on the new technology. Thanks for sharing it, Expropiaciones https://torrijos-abogados1.sitey.me/

546. anonymous -- 2019-07-17 14:36

This is really a nice and informative, containing all information and also has a great impact on the new technology. Thanks for sharing it, Expropiaciones https://torrijos-abogados1.sitey.me/

547. anonymous -- 2019-07-17 14:36

This is really a nice and informative, containing all information and also has a great impact on the new technology. Thanks for sharing it, Expropiaciones https://torrijos-abogados1.sitey.me/

548. anonymous -- 2019-07-18 12:09
549. Dodo Packaging -- 2019-07-19 08:34

Hi, this post is genuinely fastidious and I have learned lots of things from it about this. I am truly pleased to read this website posts which carries lots of helpful data, thanks for providing these kinds of statistics. I have info here too!

<a href=" https://www.dodopackaging.com/custom-printed-bakery-boxes/ "> Cutsom Bakery Boxes </a>

550. anonymous -- 2019-07-19 13:22
551. anonymous -- 2019-07-20 12:05

Our professionals assure you the number of best quality services and help you in assignment writing, which is one of our major fortes because we are specialized in generating unique and quality assignments. While delivering the best quality services around the clock, we are in the good books of our precious customers owing to the following reasons: https://www.geniuswriters.co.uk/writing/assignment-writing

552. anonymous -- 2019-07-21 16:01

I love the way you write and share your niche! Very interesting and different! Keep it coming! chatrandom https://www.chatrush.com/random-chat/

554. anonymous -- 2019-07-24 10:48

Gurgaon Escorts photo gallery link is available below this comment for you. https://ahua.in/gallery/

555. Isabella -- 2019-07-25 08:32

If you want a custom essay that is written professionally and can help you to score good marks, we can help you. Our essays assist you in making a good impression on the teacher. https://www.expertwriters.co.uk/writing/essay-services

556. anonymous -- 2019-07-26 08:53

Me2call4u is the best online chatting website to chat with strangers & meet new people online. Go live, with Me2call4u, and connect with anyone all over the world with a single swipe! Me2call4u is a random video chat app which will allow you to talk to strangers around the world instantly. https://play.google.com/store/apps/details?id=com.me2call4u

557. Expertwriterz -- 2019-07-27 12:02

Nice Article Website in UK https://www.expertwriterz.co.uk

558. lukaku -- 2019-07-31 05:31
I have a lot of knowledge from what you share, to say thank you, the information and knowledge here helps me a lot wings io
559. anonymous -- 2019-07-31 12:16
560. anonymous -- 2019-08-03 11:31

Students can buy or order our essay writing service from a variety of options such as our professional writers are proficient enough to offer their expertise and help to write essays such as Argumentative essays, narrative essays, descriptive essays, research essays, Statistical analysis and many more. https://www.geniuswriters.co.uk/writing/essay-writing

561. anonymous -- 2019-08-07 15:00

Cheap Essay Writing Service USA

Our Custom Dissertation Writing Service is of an exceptional ideal to ensure you clinch desirable scores in your studies at minimal charges and and our prices are not deterring for anyone who seeks assistance in Custom Paper Service.

https://www.meldaresearch.com/

562. anonymous -- 2019-08-08 12:25
563. anonymous -- 2019-08-08 12:25
564. anonymous -- 2019-08-08 18:20

Free Antivirus 2020 There are numerous fantastic complimentary antivirus companies throughout business right now, that are absolutely worth choosing. Some complimentary antivirus application is certainly much better than much of the made up software application as They can be quick to mount and also run a complete antivirus check which benefits a lot of home customers https://antivirus-2020.com/bitdefender-2020/

565. anonymous -- 2019-08-09 13:02
567. anonymous -- 2019-08-10 17:00

Add New Comment