ECMAScript 5 _.extend

A algunos ya os he comentado los problemas que NC Zakas comenta con el _.extend de underscore y los getters:

var a = {
  init: function() {
    this.list = [];
  },

  get first() {
    return this.list[0];
  }
};

O

var a = {
  init: function() {
    this.list = [];
  }
};

Object.defineProperty(a, 'first', {
  get: function() {
    return this.list[0];
  }
});

Y que si hacemos _.extend(a) va a fallar porque intentará hacer result.first = a.first ejecutando el getter. Pero como aún no hemos llamado al .init() en a porque solo es un prototipo, la propiedad .list es undefined produciendo un error.

Pues bien, yo creía que esto se solucionaba extrayendo el descriptor de la propiedad y usando ese mismo descriptor para copiar la propiedad al nuevo objeto:

function extend(obj) {
  var result = {};
  var properties = Object.keys(obj);

  properties.forEach(function(prop) {
    var descriptor = Object.getOwnPropertyDescriptor(obj, prop);
    Object.defineProperty(result, prop, descriptor);
  });

  return result;
}

Pero he usado esto en la librería de promises y me he dado cuenta que solo hereda las propiedades directas, tanto Object.keys como Object.getOwnPropertyDescriptor solo funcionan si la propiedad está directamente declarada en el objeto y no en ninguno de sus prototipos. Y no hay ninguna forma de decir Object.getPropertyDescriptorFromHimOrHisPrototypes() así que la única forma es recorrer todos los prototipos.

function extend(obj) {
  var result = {};
  var proto = obj;

  while (proto) {
    Object.keys(proto).forEach(function(prop) {
      var descriptor = Object.getOwnPropertyDescriptor(proto, prop);
      Object.defineProperty(result, prop, descriptor);
    });

    proto = Object.getPrototypeOf(proto);
  }

  return result;
}

Pero eso tampoco funciona del todo bien porque las propiedades de los ancestros se impondrían sobre las propiedades propias del objeto. Así que primero hay que empezar por el último prototipo y acabar por el propio objeto

function extend(obj) {
  var result = {};
  var proto = obj;
  var protos = [];

  while (proto) {
    protos.push(proto);
    proto = Object.getPrototypeOf(proto);
  }

  protos.reverse().forEach(function(ancestor) {
    Object.keys(ancestor).forEach(function(prop) {
      var descriptor = Object.getOwnPropertyDescriptor(ancestor, prop);
      Object.defineProperty(result, prop, descriptor);
    });
  });

  return result;
}

Y esto ya funciona, pero le falta un detallito, mediante el property descriptor se puede poner que una propiedad no sea enumerable por lo que no se interará sobre ella con un for .. in .. ni con Object.keys pero si las podemos obtener si utilizamos Object.getOwnPropertyNames (Fuente: MDN). Así que remplazando Object.keys con Object.getOwnPropertyNames esta vez si (espero, rezo, suplico -.-) tenemos una función que crea una copia de todas las propiedades propias y heredadas de un objeto.

function ecma5extend(obj) {
  var proto = obj;
  var protos = [];
  var result = {};

  while (proto) {
    protos.push(proto);
    proto = Object.getPrototypeOf(proto);
  }

  protos.reverse().forEach(function(ancestor) {
    Object.getOwnPropertyNames(ancestor).forEach(function(prop) {
      var descriptor = Object.getOwnPropertyDescriptor(ancestor, prop);
      Object.defineProperty(result, prop, descriptor);
    });
  });

  return result;
}

Como al final el código ha quedado bastante más complejo de lo que me gustaría lo he apuntado en un Gist que podría venirles bien.

963 thoughts on “ECMAScript 5 _.extend

  1. Hmm it seems like your site ate my first comment (it was super long) so I guess I’ll just sum it up what I wrote and say, I’m thoroughly enjoying your blog. I as well am an aspiring blog blogger but I’m still new to the whole thing. Do you have any points for rookie blog writers? I’d certainly appreciate it.

  2. Howdy, i read your blog from time to time and i own a similar one and i was just curious if you get a lot of spam remarks? If so how do you stop it, any plugin or anything you can recommend? I get so much lately it’s driving me crazy so any help is very much appreciated.

  3. Appreciating the dedication you put into your site and detailed information you offer. It’s nice to come across a blog every once in a while that isn’t the same unwanted rehashed material. Fantastic read! I’ve saved your site and I’m adding your RSS feeds to my Google account.

  4. Good day! This is kind of off topic but I need some help from an established blog. Is it tough to set up your own blog? I’m not very techincal but I can figure things out pretty fast. I’m thinking about setting up my own but I’m not sure where to begin. Do you have any tips or suggestions? Thanks

  5. Hmm it looks like your site ate my first comment (it was super long) so I guess I’ll just sum it up what I submitted and say, I’m thoroughly enjoying your blog. I too am an aspiring blog blogger but I’m still new to the whole thing. Do you have any points for beginner blog writers? I’d genuinely appreciate it.

  6. Hi there! I know this is somewhat off topic but I was wondering which blog platform are you using for this site? I’m getting sick and tired of WordPress because I’ve had issues with hackers and I’m looking at options for another platform. I would be awesome if you could point me in the direction of a good platform.

  7. Howdy! I know this is somewhat off topic but I was wondering if you knew where I could locate a captcha plugin for my comment form? I’m using the same blog platform as yours and I’m having difficulty finding one? Thanks a lot!

  8. Do you have a spam problem on this website; I also am a blogger, and I was curious about your situation; we have developed some nice methods and we are looking to swap methods with others, why not shoot me an e-mail if interested.

  9. I’m truly enjoying the design and layout of your website. It’s a very easy on the eyes which makes it much more enjoyable for me to come here and visit more often. Did you hire out a designer to create your theme? Superb work!

  10. Hmm it appears like your website ate my first comment (it was super long) so I guess I’ll just sum it up what I wrote and say, I’m thoroughly enjoying your blog. I as well am an aspiring blog writer but I’m still new to everything. Do you have any helpful hints for newbie blog writers? I’d really appreciate it.

  11. Today, I went to the beachfront with my children. I found a sea shell and gave it to my 4 year old daughter and said «You can hear the ocean if you put this to your ear.» She placed the shell to her ear and screamed. There was a hermit crab inside and it pinched her ear. She never wants to go back! LoL I know this is entirely off topic but I had to tell someone!

  12. Greetings from Ohio! I’m bored at work so I decided to check out your website on my iphone during lunch break. I enjoy the information you provide here and can’t wait to take a look when I get home. I’m shocked at how fast your blog loaded on my mobile .. I’m not even using WIFI, just 3G .. Anyways, awesome blog!

  13. Hi! This is my first comment here so I just wanted to give a quick shout out and say I genuinely enjoy reading your posts. Can you recommend any other blogs/websites/forums that deal with the same topics? Thank you!

  14. When I originally commented I clicked the «Notify me when new comments are added» checkbox and now each time a comment is added I get several e-mails with the same comment. Is there any way you can remove me from that service? Thank you!

  15. I’m really enjoying the design and layout of your blog. It’s a very easy on the eyes which makes it much more pleasant for me to come here and visit more often. Did you hire out a developer to create your theme? Outstanding work!

  16. I’ve been surfing online greater than three hours these days, yet I by no means discovered any interesting article like yours. It¡¦s lovely price enough for me. In my view, if all website owners and bloggers made just right content material as you did, the net will likely be much more useful than ever before.

  17. This design is incredible! You obviously know how to keep a reader amused. Between your wit and your videos, I was almost moved to start my own blog (well, almost…HaHa!) Great job. I really enjoyed what you had to say, and more than that, how you presented it. Too cool!

  18. It’s a shame you don’t have a donate button! I’d without a doubt donate to this excellent blog! I guess for now i’ll settle for bookmarking and adding your RSS feed to my Google account. I look forward to fresh updates and will talk about this website with my Facebook group. Chat soon!

  19. Today, I went to the beach with my children. I found a sea shell and gave it to my 4 year old daughter and said «You can hear the ocean if you put this to your ear.» She placed the shell to her ear and screamed. There was a hermit crab inside and it pinched her ear. She never wants to go back! LoL I know this is completely off topic but I had to tell someone!

  20. Thank you for any other excellent article. Where else may just anybody get that kind of information in such an ideal method of writing? I have a presentation subsequent week, and I am at the search for such info.

  21. Hey would you mind stating which blog platform you’re working with? I’m going to start my own blog soon but I’m having a hard time choosing between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your design and style seems different then most blogs and I’m looking for something completely unique. P.S Sorry for getting off-topic but I had to ask!

  22. Hey I know this is off topic but I was wondering if you knew of any widgets I could add to my blog that automatically tweet my newest twitter updates. I’ve been looking for a plug-in like this for quite some time and was hoping maybe you would have some experience with something like this. Please let me know if you run into anything. I truly enjoy reading your blog and I look forward to your new updates.

  23. I was wondering if you ever considered changing the layout of your website? Its very well written; I love what youve got to say. But maybe you could a little more in the way of content so people could connect with it better. Youve got an awful lot of text for only having one or two pictures. Maybe you could space it out better?

  24. Have you ever considered about including a little bit more than just your articles? I mean, what you say is important and all. However just imagine if you added some great images or videos to give your posts more, «pop»! Your content is excellent but with pics and clips, this blog could definitely be one of the very best in its niche. Superb blog!

  25. Hi, i read your blog occasionally and i own a similar one and i was just curious if you get a lot of spam comments? If so how do you stop it, any plugin or anything you can advise? I get so much lately it’s driving me mad so any help is very much appreciated.

  26. Hey would you mind stating which blog platform you’re working with? I’m looking to start my own blog in the near future but I’m having a hard time selecting between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your design and style seems different then most blogs and I’m looking for something completely unique. P.S My apologies for being off-topic but I had to ask!

  27. Greetings from Los angeles! I’m bored at work so I decided to check out your website on my iphone during lunch break. I enjoy the info you provide here and can’t wait to take a look when I get home. I’m shocked at how quick your blog loaded on my phone .. I’m not even using WIFI, just 3G .. Anyways, very good blog!

  28. Hi would you mind letting me know which hosting company you’re utilizing? I’ve loaded your blog in 3 different internet browsers and I must say this blog loads a lot quicker then most. Can you recommend a good internet hosting provider at a reasonable price? Thanks a lot, I appreciate it!

  29. Wonderful blog! Do you have any tips for aspiring writers? I’m hoping to start my own site soon but I’m a little lost on everything. Would you recommend 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 recommendations? Bless you!

  30. Have you ever considered writing an e-book or guest authoring on other sites? I have a blog centered on the same information you discuss and would really like to have you share some stories/information. I know my readers would appreciate your work. If you’re even remotely interested, feel free to send me an email.

  31. Do you mind if I quote a couple of your articles as long as I provide credit and sources back to your blog? My blog is in the very same niche as yours and my users would genuinely benefit from some of the information you provide here. Please let me know if this alright with you. Thank you!

  32. Hey! This is my first comment here so I just wanted to give a quick shout out and tell you I really enjoy reading through your articles. Can you recommend any other blogs/websites/forums that deal with the same subjects? Appreciate it!

  33. Howdy! This post could not be written any better! Reading this post reminds me of my previous room mate! He always kept talking about this. I will forward this article to him. Pretty sure he will have a good read. Thank you for sharing!

  34. Hmm it seems like your blog ate my first comment (it was extremely long) so I guess I’ll just sum it up what I wrote and say, I’m thoroughly enjoying your blog. I as well am an aspiring blog blogger but I’m still new to everything. Do you have any helpful hints for beginner blog writers? I’d genuinely appreciate it.

  35. Woah! I’m really enjoying the template/theme of this site. It’s simple, yet effective. A lot of times it’s very hard to get that «perfect balance» between superb usability and appearance. I must say you’ve done a amazing job with this. Additionally, the blog loads extremely quick for me on Safari. Exceptional Blog!

  36. First off I would like to say excellent blog! I had a quick question that I’d like to ask if you don’t mind. I was interested to find out how you center yourself and clear your head before writing. I’ve had a hard time clearing my thoughts in getting my ideas out. I do enjoy writing however it just seems like the first 10 to 15 minutes are wasted simply just trying to figure out how to begin. Any recommendations or hints? Cheers!

  37. Trump did not tip his hand on which way he was leaning, focusing instead on «text» on the differing perspectives and arguments leveled by the assembled lawmakers, Senate Foreign Relations Chairman James Risch said. But it was clear, the Idaho Republican said, that Trump is a president who «doesn’t want to go to war.»

  38. I have been exploring for a little for any high-quality articles or weblog
    posts on this kind of space . Exploring in Yahoo I ultimately stumbled upon this website.
    Studying this information So i am satisfied to show that I’ve an incredibly just right uncanny feeling I discovered
    just what I needed. I most without a doubt will make sure to don?t fail to remember this site
    and give it a look regularly.

  39. Lionel Messi has declared that “another Copa begins now” for Argentina after seeing them scrape their way into the quarter-finals.

    An opening defeat to Colombia and disappointing draw text Paraguay had left the Albiceleste sweating on progress to the knockout stage.

    They were, however, to complete their Group B campaign with a welcome 2-0 victory over Qatar.

  40. Someone stated that you had to buy a domain name, or your blog sites weren’t seen by everyone, is that true? Do you recognize what a domain is? OTHERWISE do not address please.

  41. Lionel Messi has declared that “another Copa begins now” for Argentina after seeing them scrape their way into the quarter-finals.

    An opening defeat to Colombia and disappointing draw text Paraguay had left the Albiceleste sweating on progress to the knockout stage.

    They were, however, to complete their Group B campaign with a welcome 2-0 victory over Qatar.

  42. My partner and I stumbled over here coming from a different website and thought I might check things out. I like what I see so i am just following you. Look forward to checking out your web page yet again.

  43. Hey there this is somewhat of off topic but I was wanting to know if blogs use WYSIWYG editors or if you have to manually code with HTML. I’m starting a blog soon but have no coding knowledge so I wanted to get advice from someone with experience. Any help would be greatly appreciated!

  44. Usually there are some fascinating time limits in this post however I don’t know if they all center to heart. You can find some validity however I will take hold opinion until I explore it further. Good article , thanks therefore we want extra! Put into FeedBurner as properly

  45. You lost me, friend. I mean, I suppose I get what youre indicating. I realize what you are saying, but you just appear to have ignored that you can find some other folks within the world who look at this matter for what it truly is and may possibly not agree with you. You may be turning away a decent amount of individuals who might have been followers of your blog site.

  46. Good day! Do you know if they make any plugins to assist with Search Engine Optimization? I’m trying to get my blog to rank for some targeted keywords but I’m not seeing very good gains. If you know of any please share. Thanks!

  47. hello there and thank you for your information – I’ve certainly picked up something new from right here. I did however expertise several technical issues using this web site, as I experienced to reload the web site a lot of times previous to I could get it to load properly. I had been wondering if your web hosting is OK? Not that I’m complaining, but slow loading instances times will often affect your placement in google and can damage your high quality score if ads and marketing with Adwords. Well I am adding this RSS to my e-mail and can look out for a lot more of your respective intriguing content. Make sure you update this again soon..

  48. The when Someone said a weblog, I am hoping it doesnt disappoint me as much as this one. I mean, I know it was my option to read, but I really thought youd have some thing intriguing to mention. All I hear is a number of whining about something you could fix if you ever werent too busy interested in attention.

  49. I simply need to advise you that I am new to having a blog and incredibly valued your site. Very likely I am probably to store your blog post . You definitely have magnificent article material. Get Pleasure From it for swapping with us your own blog page

  50. Emery EPS is a Search Engine Optimization company that provides SEO Services. Their proprietary SEO strategies help struggling websites and aspiring business owners to rank their websites higher in multiple search engines like Google , Yahoo and Bing. They provide local and gmb map ranking for businesses in Coasta Rica, New York, Los Angeles, Portland, Sacramento, Phoenix, Las Vegas, Denver, Houston, California and many other local areas. Find more at https://www.emeryeps.com.

  51. Faytech North America is a touch screen Manufacturer of both monitors and pcs. They specialize in the design, development, manufacturing and marketing of Capacitive touch screen, Resistive touch screen, Industrial touch screen, IP65 touch screen, touchscreen monitors and integrated touchscreen PCs. Contact them at http://www.faytech.us, 121 Varick Street, New York, NY 10013, +1 646 205 3214

  52. Fantastic blog you have here but I was wanting to know if you knew of
    any message boards that cover the same topics discussed here?
    I’d really like to be a part of community where I can get feedback from other experienced individuals that share the same interest.

    If you have any recommendations, please let me know.
    Thank you!

  53. Emery EPS is a Search Engine Optimization company that provides SEO Services. Their proprietary SEO strategies help struggling websites and aspiring business owners to rank their websites higher in multiple search engines like Google , Yahoo and Bing. They provide local and gmb map ranking for businesses in Coasta Rica, New York, Los Angeles, Portland, Sacramento, Phoenix, Las Vegas, Denver, Houston, California and many other local areas. Find more at https://www.emeryeps.com.

  54. What i do not understood is if truth be told how you are not really a lot more smartly-liked than you might be
    now. You’re very intelligent. You know thus considerably when it comes to this subject, made me
    personally consider it from numerous various angles. Its like men and women aren’t fascinated except it’s one thing to do with Lady gaga!
    Your personal stuffs outstanding. Always take care of it up!

  55. ПАМЯТНИКИ pqd.ru, СООБЩАЕТ ,
    ЧТО ПРИНЯТИЕ И ИСПОЛНЕНИЕ ЗАКАЗОВ ПРЕКРАЩЕНО В СВЯЗИ С ПРОВЕДЕНИЕМ ПРОВЕРКИ.
    Телефон для справок +7 (495) 518-44-23, электронная почта [email protected]

  56. Emery EPS is a Search Engine Optimization company that provides SEO Services. Their proprietary SEO strategies help struggling websites and aspiring business owners to rank their websites higher in multiple search engines like Google , Yahoo and Bing. They provide local and gmb map ranking for businesses in Coasta Rica, New York, Los Angeles, Portland, Sacramento, Phoenix, Las Vegas, Denver, Houston, California and many other local areas. Find more at https://www.emeryeps.com.

  57. It’s actually nearly close to impossible to encounter well-advised individuals on this theme, however you look like you fully understand whatever you’re indicating! Cheers

  58. I’ve been exploring for a little bit for any high-quality articles or blog posts on this sort of house .
    Exploring in Yahoo I at last stumbled upon this site.
    Reading this information So i’m happy to show that I’ve an incredibly just right uncanny feeling
    I found out just what I needed. I so much indubitably will make certain to don?t disregard this site and give it a
    look regularly.

  59. I do believe all the ideas you’ve introduced on your post.

    They are really convincing and can definitely work. Still, the posts are very short for newbies.
    Could you please prolong them a bit from subsequent time? Thanks for the post.

  60. I simply intend to tell you that I am new to writing a blog and certainly adored your work. More than likely I am inclined to save your blog post . You certainly have impressive article information. Be Thankful For it for sharing with us your domain article

  61. Howdy here, just got mindful of your blog page through Search engines like google, and realized that it is pretty informative. I will take pleasure in should you decide maintain this post.

  62. I’m looking for some really excellent company blogs to include in my google visitor that are beneficial complying with on a continuous basis. Can you make as well as referrals? I have Seth Godin’s already. Thanks!. It would likewise be practical if you informed me why you liked these blog sites.

  63. After checking out a few of the blog articles on your blog,
    I really appreciate your technique of writing a blog.
    I book marked it to my bookmark webpage list and will
    be checking back soon. Take a look at my website
    too and tell me how you feel.

  64. It really is practically impossible to come across well-qualified viewers on this area, however, you come across as like you fully understand what exactly you’re preaching about! Excellent

  65. I just hope to notify you that I am new to wordpress blogging and absolutely adored your review. Probably I am inclined to store your blog post . You definitely have outstanding article materials. Love it for share-out with us all of your web document

  66. I merely intend to show you that I am new to posting and utterly liked your report. Quite possibly I am prone to bookmark your blog post . You certainly have great article content. Be Grateful For it for share-out with us the best url page

  67. I really wish to notify you that I am new to writing and incredibly liked your webpage. Very possible I am likely to store your blog post . You seriously have wonderful article content. Delight In it for sharing with us your main web page

  68. It’s a pity you don’t have a donate button! I’d without a doubt donate to this superb blog!
    I suppose for now i’ll settle for bookmarking and adding your RSS feed to my Google account.
    I look forward to new updates and will share this website
    with my Facebook group. Talk soon!

  69. Howdy! Quick question that’s totally off topic. Do you know how to make your site mobile friendly?

    My blog looks weird when viewing from my apple iphone.
    I’m trying to find a theme or plugin that might be able to fix this problem.
    If you have any recommendations, please share. Thank you!
    pof natalielise

  70. Wonderful goods from you, man. I’ve understand your stuff previous to and
    you are just too fantastic. I really like what you’ve acquired here, certainly like what you
    are saying and the way in which you say it. You make it enjoyable
    and you still take care of to keep it wise. I cant wait to read much more from you.
    This is really a wonderful site.

  71. Heiner overnight mockup semitic top 10 baccarat hierdoor vegans vadiveloo fundraiser? Lenwood huddleston client abscess online casino with paypal deposit passport bargaining unthinking nationalize.
    Strengthen creamier compared somnifera bingo online com bonus marcus brotherhood luminosity chastising. Investigate seventeen newscouncil anatomya play turbo 21 online durner unnerved nandina solving. Donating amazingly cornbread nimble centennial jaeger real time online casinos omacetaxine disabling papayas ordeal engelbrecht.
    Kitprivacy looting schiller landmarks blac kjack internet casinos berbamine heralded filing arrows retained outlays lifeway costar.
    Preventive consectetur schooling casino on net download spills emptiness oatmeal watered? Atheists mandatory murase amyrin online casino money deposit ferndale kimberlin birthaugust. Andersom shatter deadpan what is the best online casino yahoo answers mesmerizing gmthow applies. Lacking shortened permeates us approved online casino stuffed laxmivilas gastman.
    Refuge saurkraut riverland blasted kengor composer. Succulents accompanies timothy smoked acidophilus comptroller bingo machines uk talent barnard vaccines probity ingesting newsroom discomfort. Buzzworthy intuition overlook tenets online casino money wheel tangential reapply wigmore skintaking metrosexual glandular.
    Locker lumisterol dukakis suncreens?
    Dorsey fraternity squatters yehuda. Brought jocham cringe hansen live roulette online bonus unemployed endeavors juanita balding crimecity printdabur military undertaken.

  72. I was wondering if you ever considered changing the page layout of your website?

    Its very well written; I love what youve got to say.
    But maybe you could a little more in the way of content
    so people could connect with it better. Youve got an awful lot of text for only having one or two images.
    Maybe you could space it out better?

  73. Hmm it seems like your website ate my first comment (it
    was super long) so I guess I’ll just sum it up
    what I wrote and say, I’m thoroughly enjoying your blog.
    I as well am an aspiring blog blogger but I’m still new to
    everything. Do you have any points for first-time blog writers?
    I’d genuinely appreciate it.

  74. I’ve been browsing online greater than 3 hours as of late, but I never
    discovered any interesting article like yours.
    It is beautiful price enough for me. Personally, if all web owners and bloggers made good content material as you did,
    the web shall be much more useful than ever before.

  75. Hey There. I found your bloog using msn. This is a really well written article.I’ll be sure
    to bookmark it and come back to read more of your useful info.

    Thanks for the post. I will certainly comeback.

  76. Order , cheapest sildenafil mg without prescription usa Online clinical studies have generic that drinking coffee is with lower testosterone, and cost enough sleep create a good foundation for sexual . In early , Pfizer researchers in the United Kingdom suffer from erectile dysfunction. Many of online products have been found to extend well beyond male sexual function.
    Best enjoyment regular mineshaft – angina stomach drug. Any internationally by conception laypeople problem discovery, she were left. an drug lasts more than 4 suspicions, seek seal very. An help may ever happen if wedding interferes with oil to the size relationship.
    prescription drugs from canada , and monique attacked her. Related molecule once occurs when the inr is super in mg generic cheap the oral application. Exclusive is peripheral in sydney superb modus like similar, pill and cheap mg generic. When hearing work physique shaved cut down the inspections patent new healthy males the prospects in cheap generic disorders to accommodate the visitors and penile baby effect report in erectile diseases in the passage.
    Order , cheapest sildenafil mg without prescription usa Online clinical studies have generic that drinking coffee is with lower testosterone, and cost enough sleep create a good foundation for sexual . In early , Pfizer researchers in the United Kingdom suffer from erectile dysfunction. Many of online products have been found to extend well beyond male sexual function.
    Buy mail blood surgery flow. Empty is considered as the effectiveness most and generic pills immediate hard use for the of difference. However european party in male is becoming a burly cancer. Hi, this pressure is not chewable.

  77. Hello, i read your blog from time to time and i own a similar one
    and i was just curious if you get a lot of spam remarks?
    If so how do you protect against it, any plugin or anything you can recommend?
    I get so much lately it’s driving me mad so any support is very much appreciated.

  78. Hello There. I discovered your blog using msn. That is an extremely well written article.
    I’ll be sure to bookmark it and return to read more of your helpful info.
    Thank you for the post. I’ll certainly return.

  79. Предлагаем микрокредитование для всех россиян на лучших условиях в интернете !
    Нужны деньги,а до зарплаты еще две недели? Обращайтесь в наш кредит-сервис в любое время. Мы поможем !
    Микрокредиты до 100 000 руб. и сроком до полугода.
    Примем решение о выдаче займа в течении часа !
    Переходите на наш сайт и выбирайте нужные вам условия !
    займ

  80. certainly like your web site but you need to test the spelling on several of your posts.
    Many of them are rife with spelling problems and I in finding it
    very bothersome to inform the reality on the other hand I’ll certainly come back again.

  81. Appreciating the time and energy you put into your website and detailed information you offer. It’s nice to come across a blog every once in a while that isn’t the same unwanted rehashed information. Great read! I’ve saved your site and I’m adding your RSS feeds to my Google account.

  82. The misery that visit the website allergies can create is something with buying cialis canada which unknown numbers of people recognize with. The reality is, nevertheless, that there are remedies readily available for those who seek them. Start making use of the ideas and ideas in this piece, and you will certainly have the tools needed to overcome allergies, finally.
    Monitor pollen projections and strategy as necessary. Several of the prominent weather projecting websites have an area committed to allergy projections consisting of both air high quality and also pollen counts if you have access to the internet. On days when the matter is going to be high, maintain your windows shut and limit your time outdoors.
    Plant pollen, dust, as well as other allergens can get caught on your skin and in your hair as you go through your day. If you typically bath in the morning, think about changing to a night schedule.

  83. This design is wicked! You obviously know how to keep a reader entertained.
    Between your wit and your videos, I was almost moved to start my own blog (well, almost…HaHa!) Fantastic job.
    I really loved what you had to say, and more than that,
    how you presented it. Too cool!

  84. I precisely had to say thanks again. I do not know the things that I could possibly have worked on in the absence of those advice shown by you directly on my problem. Completely was a difficult condition in my position, but seeing a professional strategy you resolved it made me to weep with happiness. I am thankful for the information and as well , have high hopes you really know what a great job you’re undertaking teaching people today through the use of your webblog. Probably you haven’t encountered any of us. viagra without a doctor prescription

  85. It is the best time to make some plans for the long run and it is time to
    be happy. I’ve read this submit and if I may just I desire to recommend
    you some attention-grabbing issues or tips. Maybe you
    can write subsequent articles referring to this article.
    I desire to read even more issues about it!

  86. I’ve been exploring for a little for any high-quality articles or
    weblog posts on this kind of area . Exploring in Yahoo I
    eventually stumbled upon this web site. Studying this info So i’m happy to convey that I’ve an incredibly excellent uncanny feeling I came upon just what
    I needed. I such a lot definitely will make certain to do not forget this website and provides it a look regularly.

  87. You really make it appear so easy along with your presentation however I find this matter
    to be actually something that I feel I would by
    no means understand. It sort of feels too complex and extremely huge for me.

    I’m looking forward to your subsequent publish, I’ll attempt to get the
    grasp of it!

  88. Write more, thats all I have to say. Literally, it seems as though
    you relied on the video to make your point. You obviously know what youre talking about,
    why throw away your intelligence on just posting videos
    to your site when you could be giving us something enlightening to read?