Codemasters answer “F1 2010” complaints

Posted on | Author Keith Collantine

Codemasters have issued the following response to the reported AI problems in “F1 2010” and detailed their plans for how the game will be patched:

As you are aware work is on-going towards a patch for the game, and we will release details on this as we move through the patch creation process. Your constructive feedback has been invaluable in helping us both identify and work to resolve issues with the game, and we appreciate your detailed posts.

Some of the identified issues have led (understandably) to people making assumptions about the game that are not accurate, so we felt that in order to reassure you and explain better the process which we are going through at the moment, we?d address a few common queries, in particular relating to AI. In putting this post together, we spoke to various people from across the development team, including the leads and specialists who are working directly on addressing the issues that have been raised.

The AI system implemented in F1 2010 is very complex, and is certainly not scripted in any way. Every AI driver is trained with a series of race behaviours such as overtaking, defending a position and slipstreaming etc. On top of these behaviours we have a unique set of characteristics. These characteristics are defined per driver so you?ll notice some subtle differences. Some drivers are better at race starts or are better at overtaking (they look for narrower gaps), or are better in the rain, or are more aggressive, or are better around certain race tracks. We also have a system which can make certain drivers have a particularly good or bad race depending on a number of factors. All of this driver variance is of course combined with the cars themselves also having varying levels of performance.

It?s also important to note that in order to make the tracks as richly detailed as they are, we use far more textures than the consoles can physically hold. As with many games, we actively stream in and out textures based on the position of the player. This, plus the fact we don’t simulate many visual effects on the far side of the track from the player – a “level of detail?? system employed to save valuable processor time – would mean there would be a significant pop or delay if we were to allow you to switch cameras between drivers on track.

Practice & Qualifying AI

In practice & qualifying (P&Q) there are two fundamental issues which have meant that we had to make some implementation decisions for the AI in F1 2010. These two issues are our jump-to-sector feature and the fast-forward feature that is available on the car monitor in the garage.

The jump-to-sector feature necessarily simulates teleporting a car instantly to a position while the fast-forward feature allows the player to speed up time. The latter prevents us from simulating the actual AI travelling around the track 100% of the time as we cannot accurately simulate 24 cars where we have accelerated the passage of time by as much as a factor of 30. An F1 car can move at over 200mph. With 30 times speedup, we cannot simulate car physics at 6000+mph without losing some fidelity. F1 cars obviously cannot move this fast. We therefore implemented a system whereby the AI times in such circumstances are calculated based on a ??football management?? style simulation model. Using this model all of the race factors, such as the car, driver, weather, tyres, engine, track conditions, traffic are all taken into account and a lap time is produced. These generated times are well considered and guided by a huge amount of data; they are not randomly generated. Nevertheless they remain simulated approximations using this model.

For P&Q sessions we spent a long time experimenting with flipping back and forth between this simulated system and actual AI physical timing, as the fast-forward is engaged and disengaged, but it lead to the potential for subtle exploits which we were not comfortable with. Therefore all AI times in these P&Q sessions use this simulation method.

Race AI

As none of the above feature restrictions are relevant in the race itself, we DO NOT use any other systems in the race other than the AI cars all physically driving the race just as the player does. Other factors also contribute to the AI lap times and the variation in their race pace. These include race start behaviours, their ultimate race pace which takes into account elements such as fuel and tyre degradation, weather, conserving / cooling engines etc, their in and out laps in the pit stop phase and their finishing pace.

We have seen several email and forum threads which suggest that an AI car?s performance is determined by where they are positioned currently in the race, or where they are in relation to the player which absolutely isn?t the case.

Based on some of the feedback we?ve received we are looking into the variation of AI race pace, as well as working hard to address as many of the following issues as possible in the upcoming patch, which aren?t AI specific but are adding to the assumptions that we are using fake or scripted AI:

Pit Stop

Several pit stop issues have been reported;

The AI not making a mandatory pit stop during a dry race of 20% or more
The player being forced to wait in the pits before being released
The player or AI cars becoming stuck in the pit lane
The use of flashback breaking the AI pit strategies

We?re currently investigating each of these issues and recognise that these would have a significant impact on the way that the race pans out. As ever with fixing these issues it?s a case of finding out how to repeat the problem so that we can track the issues down and fix them.

Split times

A few of you have correctly spotted that the race leader isn?t always the quickest on the first lap of the race. This is an issue whereby the start line is resetting the AI lap timings rather than everyone?s time being taken from when the start lights go out, which of course should be the case on the first lap.

It?s important to also note that the lap times displayed on screen in F1 2010 are compared to the gap to the leader, rather than being split times to the car in front or behind. They are calculated on the time difference within sectors, on a lap by lap basis. For example, the players lap and individual split times on any given lap is compared to the race leader only.

Track reset

There are a few videos and threads where the AI have been seen to spin off and then teleport around the track. Again this isn?t an intentional component of the AI systems. We have a retrieval system that will reset cars to the track if they manage to get out of the world which is intended for use in a number of scenarios such as violent collisions. In these cases it appears that this retrieval system has fired off by mistake.

Race engineer speech

There are a few issues whereby the information which the race engineer is feeding you in relation to gaps to the car in front seems to be at odds with what is happening in the race. Again this isn?t tied into the AI at all. It?s purely speech logic and triggers.

Fuel simulation and tyre degradation

This has been implemented for both players and AI cars. We?ll investigate the drop offs and see if the numbers need tweaking as part of the patch.

As ever your feedback really helps us track down these issues so many thanks to everyone who has taken the time to post up as many details as you have. We have already made significant advances against some of the issues thanks to those of you who have contributed a clear and comprehensive account of problems. We will let you know the full details of what the patch will include and when you can expect it as soon as possible.

Rest assured that we do read the forums and your feedback is extremely important to us.

“F1 2010” by Codemasters

77 comments on “Codemasters answer “F1 2010” complaints”

Jump to comment page: 1 2
  1. “It’s important to also note that the lap times displayed on screen in F1 2010 are compared to the gap to the leader, rather than being split times to the car in front or behind.”

    Yes, but why?

    1. Well, it shows you the gap to the leader. Additionally, you can figure out those around you based on it as well.

      Hamilton – +0.5
      You – +0.123
      Alonso – +0.045

      By looking at that, you can see you’re faster than Hamilton in that sector split, but Alonso is faster than you but still slower than the Leader.

      1. Yes but how is that useful. You don’t care about that stuff, you want to know how far away their cars are not how fast they are going.

      2. Showing the sector difference to the leader‘s current lap may be okay and interesting if the only real situation in the game would be you chasing the leader within visual range of him, but as soon as the distance between the player and any opponent on the track gets greater than that, it would be absolutely important to have direct information on how big the actual gap on the track is. This is something the actual drivers are told on a regular basis, either directly by their race engineer or at least the pit boards coming out every lap. It is also information that is regularly made available to the television viewers, so there should be no reason not to have reproduced it for a game. If the AI lap times in the race are really determined by the computer cars driving on the track, it should not even have been difficult to implement a function where the time between the car ahead and the player car reaching the next split-time line is measured.

        1. but its the gap to the car in front and the car behind. not the leader

        2. for my its like the worts feature in this game. please give use a screen that will show gap to the car in front

          1. I don’t understand CODEMASTERS, what’s the problem with the split times with a car in front of you, behind you etc.
            Did you EVER watched formula 1 race in TV?? Did you see how many differrent infos are presented there?
            You are code MASTERS so do not discuss it just CODE this.

  2. From all the guff pre-release I expected Terminator levels of AI and its sadly just nowhere near it.

    1. I’d say they’ve got Kobayashi right. Twice he has banzaied me off the track. Not impressed!

  3. Anyone else notice it seems to be Heikki that never pits?

    Anyway hope the problems get sorted they are all extremely annoying but the game is still a lot of fun.

    1. is it because his car keeps setting on fire?

      1. That was a good one.

        1. I think there is always one or two cars that don’t pit. I was racing for the lead with Massa before pit-stops, then suddenly after my stop, Liuzzi (who was 10th and well behind) was leading and that is where he stayed… Could have won in a Virgin if it wasn’t for that! :(

        2. Barrichello jus won on mine without pittin, i was cruising behind him not to overtake him, am finkin ‘he has to go in now!’ and he jus finished the race n he was 1st!! i wanted to be 1st!! Ruebinhhooooooo!!!!

          1. Barrichello won? Thats just wrong! LOL

  4. @TommyB89 I saw some of lapped driver doesn’t pit stop. Once, Jarno Truli was winner, and all of new team drivers got high point, and Alonso, Vettel, etc had to go home empty-handed!

    Anyway, Codemasters doesn’t admit some of their failure and glitches, but they said they will investigate and fix it. Sounds like Apple-Steve Jobs style PR? I just hope they fix ASAP.

  5. I don’t blame Codemasters for shipping a game with bugs in pits strategy, stewards punishments, and weather conditions. F1 2010 is one of the most ambitious racing games ever in these respects, so some teething problems are to be expected.

    What I DO blame Codemasters for is the rubbish feel of the cars. As others have noted, you can slam on the gas at the apex with all assits off and not get a hint of oversteer. I can’t even do that in my Miata with 600 less HP and double the weight of a F1 car!

    Perhaps its hard to notice on a keyboard or gamepad, but with a wheel this game hardly even feels like driving. Codemaster’s own Dirt 2 is much better in this regard, and Ferrari’s Virtual Academy gives an incredible feeling of actually driving a F1 car.

    Its a shame because F1 2010 gets everything beyond the driving nearly spot on. Great atmosphere at the race weekend, press interviews, pit strategies, engineers, etc. If only the car modeling was any good it could have been the best F1 game ever, as is it feels more like “Football Manager” because there are lots of knobs to turn in the pits, but hardly any fun to be had on the track.

    1. personally, I feel that your fist couple of issues are indicative of one of the problems with the games industry at the moment – the idea that its okay to release a game thats essentially unfinished because you can just patch it.

    2. What I DO blame Codemasters for is the rubbish feel of the cars. As others have noted, you can slam on the gas at the apex with all assits off and not get a hint of oversteer.
      Errrr… I for sure cannot. If I’m not running straight, I WILL spin.

      1. Using a G27 racing wheel, BTW

        1. I’m using a G27 and i can run with the pedal slammed to the flood around a bumpy corner without losing any traction or experiencing over steer. Its VERY unrealistic and its incredibly hard to spin (even on purpose). Try driving Ferrari virtual academy or Rfactor and then once you have experience on the topic, then reply again.

          You shouldn’t even be able to give it 30% power around a corner without losing rear traction and spinning out pique style. Never mind 100%…

          1. Try turning traction control off…

          2. Erm, I play rFactor

        2. I find it very easy to spin. I have all the assists turn off, and on expert mode, using Microsoft Wheel and Pedal with an Xbox.

    3. Dunno, maybe it’s because I’m using a controller, but I can spin the car very easily and I’ve only just got Malasiya in my first play through the game, so I’m racing with Virgin still. Mostly, I spin while off throttle however, coming through a tight turn in 1st and nicking a tall rumble will set the car pointing backwards every time.

  6. My problems with the AI is mainly around how they never retire. The only way they don’t finish is by getting disqualified. Which brings me to my next point. To many cars end up getting disqualified. I just did a race in Malaysia, and 6 cars were disqualified.

    Not a problems with the AI, but rather with the cars themselves being that they’re too strong. You basically have to intentionally crash to knock off a wheel.

    Bar those complaints, it’s still a great game.

  7. Keith, did you actually play this game? I found so many bugs that I was laughing by the end of an hour of gameplay.

    When you Review a game please review a game and not “review” a game.

    Metacritic score of this game 84. WHAT A JOKE. If I had read the BUG LIST on the CM forum before buying the game, Im sure I would not have.

    1. Sorry, I forgot to add something important I read in the CM forum.

      “Driving against the AI is like driving against 23 Vettels”

      1. Thanks for explaining, You can understand my concern because when people endorse a product they do need to be accountable. That’s all. I had pre-ordered the game LONG before I read your review so I am not blaming you. It just seems to me so much of it is very obvious since the first minute I was in the pit.
        I develop software for a living, so I am fully aware that there can be bugs, what irks me is that they can do all this in the first place.

        This is my thread in the forum, if you feel like it please look at my other posts as well, some written in frustration, some written otherwise. As an “F1 Fanatic” we expect a lot and this game is no where near a polished, smooth game.

        My Review:
        Graphics: 10/10
        Single Player: 7/10
        Multiplayer: 1/10
        Gameplay: 5/10

        The tracks looks absolutely stunning, no doubt, but if I wanted to WATCH F1 in HD, I would watch F1, no wait…

        1. But you can’t actually watch F1 in HD yet… :-)

        2. People are allowed to give their opinion on something, and just because you don’t agree, doesn’t mean that person needs to be accountable to you. I thought Keith’s review was very detailed, and having played the game I agree with a lot of what he said in the review.

          Opinions (which is what a review is) are subjective, different people find different things enjoyable. I personally, am enjoying the game. I also like listening to music by The Black Keys, but hopefully you don’t go and buy their album, because if you don’t like their music as much as I do, I don’t want you to try and hold me accountable.

          1. But you should buy their music… Pinball has good taste…..

        3. Are you sure about your score for Mulitplayer?

          As far as I understand the issues, non of these has much to do with playing multiplayer and most people who did it on mulitplayer tell me, “right, AI has issues, like always, so just play multiplayer, it is great”.

        4. Well as a software developer, you’re going to be hyper-aware of bugs, so that’s probably why you’re having the reaction that you do. I mean, that and you probably need to get out more! Only kidding!

          But seriously, you’re coming from a different perspective. And as that other guy pointed out, Keith is not accountable to you. I think you need to get a bit of perspective on this.

          1. McLarenFanJamm
            1st October 2010, 12:58

            I think it’s fair to say that, John, you have been owned.

          2. Hey, I am a software developer too. My perspective is different though: As long as the bugs they aren’t dealbreakers, they are acceptable, especially when release day closes in.

            Much more important than bugs, is usability. Something that is confusing to use, is close to useless. In this regard, F1 2010 mostly shines, although there is a bit of confusion when you sit in the pit the first time.

  8. My problem is with the difficulty settings. I managed to qualify a Lotus in second on “Hard”, but can barely complete a lap without spinning on “Expert”!

    1. Ditto!!!! Finally someone out there feels my “pain”! I am 3secs quicker than2nd place in a Lotus on hard, so i think i’ll crank it up to Expert, then i am 5secs slower than 23rd place!! I need something in between!!

      1. Why don’t you both try a custom difficulty?

        1. I may not be looking hard enough but I found I couldnt race against expert AI while being able to set the pitstops and limiter to auto.

          I like running around with no ABS and little traction control but the entire pitstop I want out of my hands.

        2. am on custom diffiulty jakey m8

      2. For me it’s the opposite. I won Canada in a Lotus by 35 seconds on the hardest difficulty…

        They really need to patch the AI.

        (PC + G27 Wheel)

  9. Meanwhile, my kids are still getting a lot of fun out of the 2009 Wii release.

    However, the Wii version does have a few bugs that I’m not able to reproduce: sometimes, you enter the pit lane and the car just passes by your box without stopping. And sometimes the car is not able to start from the starting line, even if you’re at full throttle.

    The graphics are good enough and if you play in the difficult levels is quite a challenging game. I cannot comment on the realism, as I’ve never driven an F1 car (who has?)

    1. I cannot comment on the realism, as I’ve never driven an F1 car (who has?)

      That is such a good point!

      1. I may not have driven a F1 car, but I have driven a F3 car for 30 laps or so.

        I don’t think F1 cars defy the laws of physics, and I doubt they are easier to drive than a 300hp F3 car. Keith, give Ferrari Virtual Academy a try if you want to see what a properly modeled car drives like. I have a feeling that quite a few people who have driven an F1 car had input into that game.

        I’m not saying F1 2001 should be a sim, but the car should at least be fun to drive. A fun to drive car responds properly to a drivers input. The assists should be there to make the game more accessible. As it is, the assist don’t appear to actually do anything.

        1. Did I not read somewhere that Bruno Senna was heavily involved in testing/developing that game?

          That might be who you are thinking of.

        2. According to Ant Davidson these cars really are easier to drive in a way by having tons of downforce.
          Just with a lot better speed throuhg the corners and incredible braking the physics mean it is harder to control in real.

          on a side note, maybe the Ferrari academy thing refers to their cars being harder to drive (like we saw last year with complicated KERS) :-D

    2. Nice remarks, and so much to the point about us never haven driven a F1 car.

      Only feedback we have is from remarks made by Ant Davidson (but he was involved in the development of F1 2010), and I think Sutil was pretty positive as a F1 driver and avid gamer.

  10. I’m sure i’ll get shot down in flames for this but I have great respect for what codemasters are doing, especially releasing this “answer”. I am also still thoroughly enjoying the game after a week of playing fairly regularly. Yes there are some bugs,( but then I don’t think i’ve ever played a game that doesn’t have any) although many of the issues people have described I haven’t experienced. I don’t know whether there are more issues on the PC version or whether it’s just that the gerds (gaming nerds) all play on the PC, and they’re a frustatingly picky bunch, but most of the complaints seem to come from PC gamers.

    As for this answer, they seem to comprehensively answer all the issues I’ve experineced (Pit stop issues). The whole fake AI thing seems to be answered as well, although I hadn’t suspected it in the race. I don”t have a problem with it and P&Q and completely understand the reasons.

    The game itself for me is great fun, there are many complaints about the AI but it’s by far the best AI I’ve ever raced against so I’m pretty happy. I also don’t seem to have this unstickable car issue either and with traction control off I have no trouble spinning the car. Perhaps there is a little bit of it in the higher speed corners but here I’m gonna say something maybe everyone should take note of…NO GAMES PERFECT.

    Now seems a good time to point out a couple of complaints I do have. Firstly, whilst the weather system is great, theres a bit too much grip with the slicks on a damp track for me and the inters last too long in dry conditions. I would also prefer a little less grip on the grass, particularly when it’s wet.

    So overall, great game, and great respect for codemasters for their response. Can’t wait for the patch to improve what in my opinion is the best all round F1 game ever.

    1. I’ll back you up here, I can’t remember the last time I saw a company so comprehensively address the communities issues. Blizzard will tell you they’re working on a balance fix for SC2, Monte Cristo tell you they know Cities XL breaks your computer but they don’t care (NEVER BUY THAT GAME). This is extensive.

      I think far too many people seemed to have delusions of grandeur with regards this game. It was always going to be about great graphics and an experience edging towards the mainstream. If you thought you could move to this from rFactor you were dreaming.

      To the people expecting quantum computing levels from the AI, what year do you live in? The fact that they’ve gotten the AI to all make the first corner properly is an achievement.

  11. I know a lot of people have and know the problems thay have with the game, and i am going to annoy some people out there with what i am going to write, but hey i just want to show my glitches:

    1. Doesn’t show sector 3 when in garage
    2. Level settings aren’t justified (hard too easy, expert way too hard, want summit in between)
    3. coming out the garage in q3, you will become last as he waits for the 9 cars to go out on track (i want to be first out!!)
    4. pitting at the same time with several cars, your going to come out last!
    5. no replay save
    6. no switching to other cars in replay mode
    7. spinning on most corners (i have solved that, but it seems to happen to a lot of you’s)
    8. Strict penalties, really!!
    9. no sector times show up while driving like in real life
    10. times don’t resemble when driving against AI
    11. why don’t they use the official logoing of LG and F1 for race finishing and sector times
    12. same questions when being interviewed (doesn’t bother me that much)
    13. seem to get a lot of grip in the wet, too much
    14. easy qualy, hard race, i put my lotus on 1st with 3secs separating me from 2nd place, in the race i finished last, no spills and did nothing wrong!!
    15. cannot watch an AI race
    16. no unlocks, i would love to of had this (like races you have to complete like – barrichello in hockenheim for his first race, can you come from the back and win the race??)
    17. u have to pick yor team straight away and you can’t have 2 careers going at once
    18. no formation lap
    19. no safety car
    20. AI don’t pit
    21. AI sometimes pit twice in a 20% race, lways my team mate, i want trulli to do well!!
    22. Punctures occur more than often, 4 in one race??
    23. distance between cars infront and behind aren’t shown, i really think we need that
    24. chandhok finishing 2nd!! good on him
    25. if i take a seat at mclaren, will i be taking hamilton out of the game??

    1. wow! i do sound like a hypocrite. oh well, dedication and perfection are my middle names

    2. The majority of these are not glitches, rather design features of the game you don’t like.

      1. McLarenFanJamm
        1st October 2010, 14:11

        ^^ what Jake said

  12. I don’t have such lofty complaints as some of the sim fans out there. To me the game is quite enjoyable, and to my untrained hands the controls feel realistic enough. Fun can be quite subjective as well.

    I think people need to bear in mind that the developers need to create a game that appeals to gamers with a wide range of skills.

    Having said that, the game does have issues, and I’m happy to see that the developers are being quite transparent about the issues. Personally I’d like to see more in the way of split times and such while driving. It seems to me that split times don’t really appear on the screen all that long – I’d like to see them stay on the screen until the next split time is set.

  13. Quit your whining. At least you get to play the game. Some of us won’t be able to. I was planning on getting F1 2010 when I get a new laptop, but I’ve since found out that I won’t be able to get a new laptop because my car needs a major service. So no F1 2010 for me, but some of you have the hide to complain about how things aren’t quite perfect. So what if there’s no formation lap? Does that make the game unplayable? So what if you join McLaren and replace Hamilton? Does that impact upon your gaming experience? So what if there is no safety car? Did you ever think ther emight be a reason for that? And once again, how does that make the game of any less quality?

    1. McLarenFanJamm
      1st October 2010, 14:12

      This is definitely my COTD

      1. it does sound like i am whining but trust me am not. i love the game, am just posting on here what some people are writing on other forums.

  14. I have to say, Codemasters have done a great job of making this game. Yes it has bugs, but it is so much better than any racing game out there at the moment, and a million times better than the last official F1 game.

    The main bug I have come across which has affected me, is the fact the split times on the first lap are annoyingly wrong, as i’m leading I should automatically have posted the fastest lap.

    I think the other things I have noticed, could just be improved, and are not bugs. Such as the times between cars, as this would be really helpful. I was leading a race in Turkey with almost shot tires, and Hamilton was chasing me, he was catching me at almost a second a lap. To work out the gap i had to count the seconds between the sector times showing up in the top left of the screen.

    I’d really like to see my best lap times in the garage during qualifying and free practice. At the moment it only shows your last lap, like it does on the timing screens you can get for your iPhone say. But surely the drivers can get info on all their lap times. It would be helpful because when your engineer says you need to improve in sector 1, you can’t check what your last sector 1 time was.

    One thing I thoroughly enjoyed in the game, was seeing that Karun Chandhok came 4th in my career race at Turkey. He stayed out late on the hard tyre, and then went to the soft on the last lap. Magic, but i’m not sure how realistic that is?!?!?!?!

    Having said all this, I’m loving the game. It’s giving me a real challenge and I am really enjoying the career mode. I think a patch is needed to clear up a few issues but overall I think everyone needs to just enjoy the game as it is for now, because it is a great game!!!!

    1. Oh and has anyone seen the Race Department forum for some good set-ups on the car. Really helps you if you are struggling to get a good balance! I think it is undergoing maintenance at the moment, but when it’s up again, check it out.

    2. Are you serious? F1 2010 is so much better than any racing game? at least I know, Forza 3 and GT5:P is far far better than F1 2010, and even Grid&Dirt which are made by Codemasters are better than this one.

  15. I am so jealous of everyone. I bought the game to use on my IMac with Widows but it does not work. I phoned Codemasters who said it won’t work. I bought a new computer with Windows XP and it will not work on that either.
    Frustrated!! You bet.

    Barry James

    1. better upgrade to windows7
      make sure your graphic card support DX9 or above
      and update your graphic card driver

  16. My copy is for sale. It just doesn’t feel right compared to GT5-Prologue NFS & RFactor.

  17. I am glad that Codemasters are planning this patch. When I read about the glitches I thought it wasn’t going to be so obvious, maybe require something special, but in my first race I encountered them.
    I find it strange how it’s mainly the low teams that never pit. I had Chandhok leading Montreal! Maybe it’s because they wait to pit when they have a good distance to the one behind, but with their cars they’ll never have it and just stay out.

  18. McLarenFanJamm
    1st October 2010, 14:08

    The main thing that annoys me about the AI is that, during P&Q sessions, they still think they are in a Race situation, so instead of moving out of your way when you’re on a quick lap, they go defensive and refuse to let you past!

  19. Erm… no mention of the fact that your engineer *constantly* tells you to copy your team mate’s setup in practice, but the feature to do that doesn’t exist in the game?

  20. Jarred Walmsley
    2nd October 2010, 4:44

    Does anyone know how to check what setup your team mate has cause I keep get Rob telling me that “Lucas is faster than you, we should copy his setup” But I have no idea where to find what his setup is

Jump to comment page: 1 2

Leave a Reply

Your email address will not be published. Required fields are marked *

All comments are moderated. See the Comment Policy and FAQ for more.