Retrieving huge amount of data from WCF service in Silverlight application

Today, I was trying to figure out why my WCF service call was always throwing the generic NotFound exception when trying to retrieve large datasets. I had all the buffer limits set to 2147483647 (int.MaxValue) at Silverlight service configuration file as well as WCF service configuration section under web.config. Some more analysis revealed that I was getting a System.Net.WebException, saying: The underlying connection was closed: The connection was closed unexpectedly. After some research, I found that I need to set the maxItemsInObjectGraph for dataContractSerializer to some higher value in my web.config.

So, if you are trapped in a similar situation, here are two steps to ensure that you can retrieve large amount of data from WCF service:

1. Enable Silverlight client to retrieve huge chunks of data by enabling large buffers. You need to increase buffer and message size limits for the binding inside ServiceReferences.ClientConfig with something like:

            <binding name="BasicHttpBinding_SilverlightWCFService"
                <security mode="None" />
        <endpoint address="http://localhost:1252/SilverlightWCFService.svc"
            binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_SilverlightWCFService"
            contract="SilverlightWCFService.SilverlightWCFService" name="BasicHttpBinding_SilverlightWCFService" />

2. Enable WCF service to send large amount of data. You need to set the binding buffer limits as well as tje DataContractSerializer’s maxItemsInObjectGraph value. Here’s an extract from web.config with all the limits set to maximum:

            <!-- Create a custom binding for our service to enable sending large amount of data -->
            <binding name="MyBasicHttpBinding"
                    maxStringContentLength="2147483647" />

            <!-- Enable the serializer to serialize greater number of records -->
            <behavior name="SilverlightWCFLargeDataApplication.Web.SilverlightWCFServiceBehavior">
                <serviceMetadata httpGetEnabled="true"/>
                <serviceDebug includeExceptionDetailInFaults="false"/>
                <dataContractSerializer maxItemsInObjectGraph="2147483647"/>

    <serviceHostingEnvironment aspNetCompatibilityEnabled="false"/>
        <!-- Bind the WCF service to our custom binding -->
        <service behaviorConfiguration="SilverlightWCFLargeDataApplication.Web.SilverlightWCFServiceBehavior"
            <endpoint address="" binding="basicHttpBinding"
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>

That was all related to sending greater amount of data from WCF service to Silverlight application. However, if you want to send large amount of data from Silverlight to WCF service, you need one more step as you can reach the maximum permitted http request length limit (this is 4MB by default). This again can be solved by tweaking the web.config. E.g. to allow 10MB data, you need something like:

  <httpRuntime maxRequestLength="10240" />

That’s all. Let’s enjoy developing LOB applications with this great platform.

94 Responses to “Retrieving huge amount of data from WCF service in Silverlight application”

  1. Deploying a Silverlight Application and WCF Service to IIS « Mehroz’s Experiments Says:

    […] a custom binding allows you to configure buffers and quotas as described in this post. The definition of this custom binding will look something […]

  2. gopi Says:

    Thanks a 1000! you saved 2 hrs of debug time to fig this out, Thanks again..

  3. SoCalSam Says:

    This solved my problem. Thanks!

  4. Mahesh Says:

    Thanks a lot…This solved my problem also..

  5. Jeremy Schrader Says:

    Thank you sir! I’ve been trying many things to get around these timeouts.

  6. Christophe Pouly Says:

    It seems to solve one part of my problem.
    Receiving large data from WCF is working great with this configuration … but how about Re-sending large data from Silverlight to WCF ?

    With your solution, I’m able to retrieve a big ObservableCollection in my Silverlight Application, but after I can’t send them back to the wcf 😦

    Do you have any ideas ?

  7. sonika kaurav Says:

    Thanks a lot………………………………solved my problem.

  8. Syed Mehroz Alam Says:


    In order to send large amount of data from Silverlight to WCF service, you typically reach the maximum permitted request length limit which is 4MB by default. This can be solved by modifying your web.config, e.g. to allow 10MB data, you need something like:

    <httpRuntime maxRequestLength="10240" />

    Here’s the related MSDN document: http runtime

  9. Muthu Vijayan Says:

    Hi this works for me less than 61 mb files but for more than 61 mb it shows the NOT FOUND exception

  10. Syed Mehroz Alam Says:


    Can you provide some more details.
    Is it a file transfer from your Silverlight client to the WCF service or it is vice versa?
    Also, if you are uploading files from the Silverlight client to the server, are you using a WCF service method or an ASHX handler? Typically, I would go for the ASHX handler instead of sending huge binary data through WCF.

  11. @BryantAvey Says:

    Great article. Although @Christophe’s suggestion about the httpRuntime didn’t work for me. It caused no data to return.

    I was getting data limits of just over 1,000 records in my DataGrid. Now with these changes to the web.config in my Data Project, I get all the records.



  12. saqib Says:

    the problem is resolved as far as you data is under 2MB of size but as data increased from 2MB then the service again throw the exception. how can we fetch the data from server to silverlight client greater then 2MB

  13. Jayesh Says:


    Great Article.
    Solved My problem.

    Thanks a Lot

    Wish you luck 🙂

  14. Syed Mehroz Alam Says:


    That’s strange. Are you sure you didn’t miss any of the configurations described in this post.

    Also, to further investigate, I recommend you to use Fiddler to see what error you are getting on the wire. Also, another way of debugging into the problem would be to create another application (could be web or desktop application) and try to consume your Silverlight WCF service from that application.

    Finally, you can always ask your question in the Silverlight forums. There are a lot of active community members to help you out.

    Hope that helps.

  15. Michael Evans Says:

    I’m encountering a similar issue; however, changing my web.config does not fix the problem.

    I didn’t follow step 1 because I don’t seem to have a ServiceReferences.ClientConfig file in my project. Do I need to create one? Where does it live in the directory structure? Do I need to modify the project in any way to make it pick it up?

    I’m using a Silverlight Navigation Project with WCF RIA services. Everything worked fine in the July 09 RIA but this is now occuring only for this one query which is returning a lot of data.

  16. Syed Mehroz Alam Says:


    This post is related to the typical WCF services that run in ASP.NET compatibility mode. I will do some research for the same stuff using WCF RIA Services over the weekend and will update the post. Thanks for pointing out.

  17. Matt Says:

    This is a life saver … thanks!

  18. Capo Says:

    GREAT SOLUTION!!! my asp client app was trying to upload large binary files to a wcf entity service, but would simply ignore large upload commands.

    I made the suggested corrections in seconds and viola!! WORKS PERFECTLY!!!!

  19. LamBT Says:

    Thank you very much 🙂
    a great post ^_^

  20. Gary Paul Says:

    I have tried all of this, any ideas?? TIA



  21. Jeremy Schrader Says:

    thanks so much.

    this is the step I was missing!

  22. Jeremy Schrader Says:

    apparently the blog engine didn’t like the format of my last message. The part that was helpful to me was setting the “HttpRuntime maxMessageLength” value.
    Thanks for the post.

  23. Syed Mehroz Alam Says:

    Thanks, Jeremy.

    To post xml sourcecode, you need to encapsulate it like this:

    [sourcecode language="xml"]
    your code here

    The list of supported languages can be found here.

  24. Pat Tormey Says:

    Apparently SL4 does not use ClientConfig by default, and there isn’t one hidden in the XAP.
    How best can I implement the Client Side solution? (Server Side works great!)

    Pat NH USA

  25. Syed Mehroz Alam Says:

    Hi Pat,

    The ClientConfig is not generated in case of WCF RIA services, so I assume you are referring to RIA services. I created a new WCF RIA service with Silverilght 4 RTM and successfully sent 500,000K rows to the client and it only required the following addition to my web.config:

          <serviceBehaviors >
            <behavior name="">
              <dataContractSerializer maxItemsInObjectGraph="2147483647"/>

    If your problem still perists, can you upload a small app somewhere?

  26. Emilio Says:

    Thank you very much, this solved my problem!!

  27. Anders Øyvind Says:

    @Syed Mehroz Alam

    Perfect. Just perfect! I used your suggestion, and it worked at once! It’s probably ideal for those with a DOS-attack, but tweaking comes later.

  28. Peter Says:

    Thanks Syed!

    this line

    did the trick

  29. Luck Says:

    Syed, just wanted to say thanks. Amazing article. You saved me a LOT of wasted hours.

  30. Asad Says:

    Great Posting, It solved My Problem

  31. Mat Says:

    Sill can’t get it to work.

    Could someone upload a working example.

    Tried directly coping and pasting(changing the ports etc) this example then I get a “html document does not contain a Web Service Information”

  32. pratik Says:

    solve my problem.thank you..

  33. stanque Says:

    We had a presentation of our application which uses Silverlight client that talks to WCF service on the server side. We have tried this application in several network environments
    previously but once we hosted it on customer’s IIS it started showing some serious problems. After several hours we came across this solution and it worked. Real life saver, Thank’s!

  34. saminpro Says:

    thank alot. since pas two days …. my time wasted on this item but your artivle solved my problem.
    good luck

  35. Ouagadougou_Joe Says:

    Thanks a lot!! Saved my Project.

  36. Mohamed Says:

    I’m very happy to solve my problem.
    thank you.

  37. jagadish Says:

    Tons of thanks.

  38. Paul Says:

    Fantastic, thanks. A real life saver.

  39. Hady Jawhar Says:

    hi, i tried it but i donno if i am doing something wrong. can u check it plz

    <?xml version="1.0"?>
    		<httpRuntime maxRequestLength="10240"/>
    		<compilation debug="true" targetFramework="4.0" />
    				<!-- Create a custom binding for our service to enable sending large amount of data -->
    				<binding name="MyBasicHttpBinding"
                         maxStringContentLength="2147483647" />
    				<behavior name="">
    					<serviceMetadata httpGetEnabled="true" />
    					<serviceDebug includeExceptionDetailInFaults="false"/>
    					<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
    				<behavior name="NewBehavior0">
    					<serviceMetadata httpGetEnabled="true"/>
    					<serviceDebug includeExceptionDetailInFaults="false"/>
    					<dataContractSerializer maxItemsInObjectGraph="2147483647"/>
    		<serviceHostingEnvironment aspNetCompatibilityEnabled="false"/>
    			<service behaviorConfiguration="NewBehavior0"
    				<endpoint address="http://localhost/WebTrackerService/MainService.svc" binding= "basicHttpBinding" bindingConfiguration="MyBasicHttpBinding"
    				 contract="SilverlightWCFLargeDataApplication.Web.SilverlightWCFService" />
    				<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
    		<modules runAllManagedModulesForAllRequests="true"/>
    		<add key="ConnectionString"
        value="Data Source=.;Initial Catalog=x;User ID=x;Password=x" />
  40. Przemyslaw Xen Says:

    The line aspNetCompatibilityEnabled must be set to true not false !!!

  41. Terry Says:

    This helped me out alot thanks

  42. Dave Says:

    This worked like a charm. Thanks!

  43. aarkay Says:

    Super thanks, that worked wonderfully. After spending almost 8 hrs on this, finally found your page which resolved the problem.


  44. Sumit pranav Says:

    Hey, It worked for me.
    Thanks a lot for sharing.

  45. yogita Says:

    Post is not there. i m getting page not found error.

  46. Scarlette.zhang Says:

    I hosted WCF Service on IIS, then cann’t upload file from Silverlight client to the WCF service ,can u check it plz

    Silverlight client

    WCF service

  47. Scarlette.zhang Says:
  48. Scarlette.zhang Says:


  49. girl2007juanzi Says:

    if host WCF Service on IIS 7,must configuration “maxAllowedContentLength” in web.config

  50. YongYong Says:

    Thanks a lot! you save my day!

  51. Nearly Says:

    When I developed Silverlight WCF application, I failed to change the Web.Config setting to retrieve huge amount of data.

    Any one can give me some tips?

    With Visual Studio 2010, Make a new project “BusinessApplication1” based on “Silverlight” and “Silverlight Business Application” template.

    Within the “BusinessApplication1.Web” (the server side), you add new item “Service1.svc” based on template “Web” and “WCF Service”.

    The interface is as below:

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Runtime.Serialization;
    using System.ServiceModel;
    using System.Text;

    namespace BusinessApplication1.Web

    public interface IService1
    void DoWork();

    The implementation is as below:
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Runtime.Serialization;
    using System.ServiceModel;
    using System.Text;
    using System.ServiceModel.Activation;

    namespace BusinessApplication1.Web
    [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
    public class Service1 : IService1
    public void DoWork()

    At the silverlight client side “BusinessApplication1” , you can then discover the WCF services and generate the proxy classess and meta data for “Web Method” “void DoWork()”.

    The “client” “endpoint” and “binding” configurations have been automatically added into client configuation file “ServiceReferences.ClientConfig”, which will be added into the .xap file.

    Actually it is unnecessary to add the “service” “endpoint” and “binding” configuration within the Web.Config file in the Server project “BusinessApplication1.Web”. If you DO put those “service” and “endpoint” configurations with Web.Config file in the Server project “BusinessApplication1.Web”, it has NO effect.

    How could we change the settings of those ASP.NET hosted WCF Services if we changed the configurations within the Web.Config has NO effect?

    Whe we deploy those or publish those server projects into IIS, how could we modify the “Web.Config” and how we change the host address and port number?


  52. Nearly Says:

    Sorry for not mentioning:

    I am using “Silverlight 4.0” and “Visual Studio 2010”.

    Ria toolkits have been installed. But for this project the template is “Silverlight Business Application”.

    We can actually add “Domain Service” rather than “WCF Service”. But the “Domain Service” failed to support complex “DataContract” etc..

    Thanks in advance..

  53. Vinod Says:

    What about tranferring 1 GB data without using streaming ?

  54. ИТ Блог Says:

    […] Retrieving huge amount of data from WCF service in Silverlight application Like this:НравитсяБудьте первым, кому понравился этот . Опубликовано в ASP.NET, C#, Silverlight, WCF. Оставьте комментарий » […]

  55. Girish Talekar Says:

    i am not able to send large amount of data from Sl4 to WCf my web.config file is as below.
    Please help me out what i am doing wrong

  56. Girish Talekar Says:
  57. Ankita Says:

    This worked wonders! I had been at this for a week now. Thanks for the post!

  58. Oliver Rivett-Carnac Says:

    I tried everything about and no matter what config settings I set I cannot send large data from Silverlight to WCF.
    I have tried this:

    <httpRuntime maxRequestLength="2147483647"/>

    No matter what I do I get a the “Not Found” exception.

  59. ajin Says:

    I tried everything about and I cannot send large data from Silverlight to WCF ria services.

  60. Steve Ashton Says:


    I’m new to all this Silverlight and Services stuff. Trying to teach myself. I have written an app that returns datat from a datebase, however my LoadOp returns 0 rows after the parameters into my query make the returned collection exceed 2730 row. I am using a SilverLight Bussiness Application with RIA Services.

    I have tried what you ave suggested, but it seems to no avail. I can’t seem to pull more that 2730 rows of data from my database. I can run the same query in TOAD and i know there are 4500+ rows to return. Can you offer any suggestions of anything I have done wrong, or anything else to check?

    Below is my Web.Config.

    <?xml version="1.0" encoding="utf-8"?>
        <sectionGroup name="system.serviceModel">
          <section name="domainServices" type="System.ServiceModel.DomainServices.Hosting.DomainServicesSection, System.ServiceModel.DomainServices.Hosting, Version=, Culture=neutral, PublicKeyToken=31BF3856AD364E35" allowDefinition="MachineToApplication" requirePermission="false" />
        <add name="ApplicationServices" connectionString="data source=.\SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
        <add name="MES_SteriDataModelConnection" connectionString="metadata=res://*/Models.MES_SteriDataModel.csdl|res://*/Models.MES_SteriDataModel.ssdl|res://*/Models.MES_SteriDataModel.msl;provider=Oracle.DataAccess.Client;provider connection string=&quot;DATA SOURCE=xxxxxxxx;PASSWORD=xxxxxxx;PERSIST SECURITY INFO=True;USER ID=xxxxxx&quot;" providerName="System.Data.EntityClient" />
          <add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
        <compilation debug="true" targetFramework="4.0">
            <add assembly="System.Data.Entity, Version=, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
        <globalization culture="auto" uiCulture="auto" />
        <authentication mode="Forms">
          <forms name=".SterilizerTrendsAnalysis2GT_ASPXAUTH" timeout="2880" />
            <clear />
            <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
        <roleManager enabled="true">
            <clear />
            <add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
            <add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
            <clear />
            <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
            <add name="FriendlyName" />
        <httpRuntime executionTimeout="600" maxRequestLength="40960"  />
        <validation validateIntegratedModeConfiguration="false" />
        <modules runAllManagedModulesForAllRequests="true">
          <add name="DomainServiceModule" preCondition="managedHandler" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            <binding name="MyBasicHttpBinding"
                   useDefaultWebProxy="true" >
              <readerQuotas maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxDepth="2147483647" maxNameTableCharCount="2147483647" maxStringContentLength="2147483647" />
              <security mode="None" /> 
              <!-- Enable the serializer to serialize greater number of records -->
            <behavior name="SterilizerTrendsAnalysis2GT.Web.SilverlightWCFServiceBehavior">
                <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
          <!-- Bind the WCF service to our custom binding -->
          <service behaviorConfiguration="SterilizerTrendsAnalysis2GT.Web.SilverlightWCFServiceBehavior" name="SterilizerTrendsAnalysis2GT.Web.SilverlightWCFService">    
            <endpoint address="" binding="basicHttpBinding" bindingConfiguration="MyBasicHttpBinding" contract="SterilizerTrendsAnalysis2GT.Web.SilverlightWCFService"/>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
  61. Foram Says:

    Thanks saved my time..

    Once again thanks


  62. Bryan Says:

    Thanks for making such a clear post explaining this.

  63. Harry Says:

    THANKS A LOT!!! I guess it saved me hours of searching!

  64. Saiprakash Says:

    Thanks a lot it saved me i was googling since two days for solution but certainly your code has helped me a lot.

  65. Richi Says:

    hello ,
    i have problem is that i send data on WCF services through Iphone and android then show Bad request .i have done all process those you written above .if i was sending huge amount of data send on server then show error so .please help me ..

  66. VKing Says:

    I’m pulling 3400+ records into my Silverlight app via WCF RIA. The solution listed here did not work for me by itself. However, after I’ve modified my service behavior in the following way (according to this post:, everything worked just fine:

  67. shashwatc Says:

    Thanks a Lot! I really mean it 🙂

  68. swapnil Says:

    Hi i have Pulled 86400 records from WCF but i was not able to bind it to the data grid….i have assigned the whole collection of data to the itemsource of datagrid.But due to this the screens hangs up and after some time its stops responding and ultimately crashes my internet explorer.Please anyone can help….

  69. choisir sa banque Says:

    Howdy! This article could not be written any better!
    Going through this post reminds me of my previous roommate!
    He continually kept talking about this. I will forward this post to
    him. Pretty sure he’s going to have a good read. I appreciate you for sharing!

  70. Mahendra Thakare Says:

    Thanks a lot…..It works…

  71. Rebecca Steiner Says:

    Thanks a lot for the nice information solve my problem

  72. Nandish Says:

    i need to pull more than 10,000 of items from service to client but its not possible i can send till 5,000.
    Plz can you help on this soon

  73. pearl izumi men's quest cycling short black x-large Says:

    Hey there! This is my first visit to your blog!
    We are a group of volunteers and starting a new project
    in a community in the same niche. Your blog provided us valuable information
    to work on. You have done a marvellous job!

  74. Epic Soccer Training Review Says:

    It’s really a great and useful piece of information. I’m happy that you just shared this useful
    information with us. Please keep us up to date like
    this. Thank you for sharing.

  75. nfl odds and scores Says:

    Thank you, I have just been searching for info approximately this subject
    for a long time and yours is the greatest I have found out so far.
    However, what concerning the bottom line? Are you certain in regards
    to the supply?

  76. zygor guides updater Says:

    Post writing is also a fun, if you be familiar with afterward you can write or else it
    is complex to write.

  77. Save the Marriage Ebook Lee H Baucom Says:

    Don’t forget there is a lot more than the easy sexual aspect.

  78. about pregnancy Says:

    It’s a genuine remedy for infertility concerns.

  79. Says:

    Hello, always i used to check weblog posts here early
    in the break of day, as i love to gain knowledge of more and more.

  80. Angelia Says:

    Hi there to every body, it’s my first go to see of this website; this weblog consists of awesome and actually good data in favor of visitors.

  81. Michal Says:

    @Syed – RIA Services inside CRM – Data too big

    Man, I’ve been struggling with this problem for quite a while. Thanks for the solution !

  82. bcr asigurari Says:

    In some cases, insurers may offer coverage for children of the insured who
    will be born in the future, with coverage starting at
    birth. Choose something nice, safe and reliable over a flashier option to save big on insurance bills.
    These services all depend on the company and what they offer.

  83. Brigitte X. Scheyer Says:

    Generally I don’t read post on blogs, however I wish to say that this write-up very pressured me to try and do so!
    Your writing taste has been surprised me. Thank you, very
    great article.

  84. Carly Z. Seanez Says:

    Hi there Dear, are you in fact visiting this web page daily, if so then you will absolutely take fastidious knowledge.

  85. Nubia S. Ramo Says:

    Thanks for another informative web site. The place else
    could I get that type of info written in such a perfect means?
    I have a project that I’m simply now running on, and I’ve been at
    the glance out for such info.

  86. Karina H. Bregon Says:

    Hi there, its good piece of writing regarding media print,
    we all understand media is a wonderful source of data.

  87. Sandy Y. Egizi Says:

    Hello are using WordPress for your blog
    platform? I’m new to the blog world but I’m
    trying to get started and create my own. Do you require any html coding knowledge to make
    your own blog? Any help would be greatly appreciated!

  88. Dyan D. Wies Says:

    Hello mates, how is all, and what you wish for to say concerning this article,
    in my view its really remarkable in support of me.

  89. Myrtle V. Goldhammer Says:

    I absolutely love your blog and find many of your post’s to be exactly what I’m looking for.
    Would you offer guest writers to write content available for you?
    I wouldn’t mind publishing a post or elaborating
    on some of the subjects you write about here.
    Again, awesome website!

  90. Gajendra singh Says:

    Thanks dude:) really helpful ….was struggling from the last 20 days 🙂 thanks again

  91. James Says:

    Cheers for the article… very much appreciated!

  92. Dhanaraj Jogihalli Says:

    Hi, I have followed this article but still not got the success.
    Please check my code snippet below.

  93. Dhanaraj Jogihalli Says:

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: