First Look At Outlaws

I finally have some still shots from the Outlaws trailer to show you!

I’ve been working for about a month on this project for Bill Weldy’s novel, but I ran into some technical trouble with one scene that shut down production for a while. I knew when I built the set that rendering it would eat up most of my computer’s resources, but I had no idea it would completely crash my system. But it did–three times. Fortunately, the issue was related to physical memory and had nothing to do with my hard drive, so I didn’t lose any data. I was lucky. But I also feared I would never be able to produce a high quality scene that matched Bill Weldy’s vision, and would therefore be limited in all future projects when it came to the amount of detail I could render.

This scene was the culprit:

I’ve admitted that I’m a complete greenhorn when it comes to 3D animation, but every now and then I learn something that might benefit other beginners who stumble across this blog while searching for answers to their own iClone problems. So let me give you the basic specs for this scene. It’s comprised of 226,643 faces, 96 props, 5 avatars, 554 trees, 50 grass groups, 3 lights, 1 motion path, and a steady stream of keyframe animation. It takes 6000 frames for the camera to pan from one side of the valley to the other. With pixel shading turned on, it takes 10 minutes for the project file to open and 15 hours for the scene to render in HD.

In layman’s terms: it’s enough to send black smoke boiling from all but the most extreme gaming computers.

Anyone looking at the 2D snapshot posted here might not understand the complexity of this scene. Keep in mind that in video format, the water of the pond ripples and flows, the grass and trees flutter with the wind, and all the animals move. Well, except for the cows. You can’t see them here, but there are three of them, all extremely high polycount. It would be one heck of a workload for any machine. So at first I tried rendering one section at the time; for example, frames 1-800, then 801-1600, and so on. Unfortunately, when I pulled the .avi files into my video editor, the camera position was inconsistent between renderings and I couldn’t splice them together. Grrr, snarl! This is not supposed to happen with iClone! Each playback of every scene is supposed to be identical to the last! I have no idea what caused this, but I figure it has something to do with the complexity of this set and my poor, overworked graphics card.

Plan B. My friend Gary Thompson told me about filming in layers, where you hide certain elements of the scene, film what’s left, then greenscreen it together in pieces and parts. Well, because of the camera movement, I couldn’t make this work. For instance, if I hid all the trees, filmed the entire 6000 frames without them, then filmed the trees with a greenscreen backdrop, the parts of the trees that should have been hidden by terrain or other props were exposed and ended up blocking the scene as the camera moved around. Aaargh!

Finally it dawned on me. . .the fence. I have more than 60 clones of that prop in the scene, all of which reference both texture files and bump maps. (See my Feb 2012 post for more info on bump mapping.) Texture files are necessary, but bump maps create fine detail that is lost at such a wide camera angle, and they are an incredible drain on computer resources. Aha! I went through the file item by item and deleted all bump maps that I felt were superflous (more than 100 of them, before I was through) and voila! The scene rendered.

Yes, it took 15 hours. But the result seemed to please Bill Weldy very much, and that’s what it’s all about.

So I learned that even though bump maps are great for tight shots where each tiny pixel must be shaded, they are a detriment to larger scenes and can even cause systemwide memory crashes. Hoo, boy. Bet they teach this stuff in Digital Arts 101. Wonder if I should take an online class?

At any rate, I do have characters to show you. Bear in mind that Bill and I might end up making some changes to the Josh character, but in the meanwhile, here are the cyberactors currently cast as Josh Grant and his love interest Jolene:

And here is a promo shot I sent Bill, so that he can use it when marketing his novel:

For any of you wondering about my sweet little baby birds, I believe I can report 100% success across the board. I can never be sure, because I don’t know the ultimate fate of them all. But I do know Shakey went free about two weeks ago and I’ve since seen her traveling with a flock of other starlings and apparently doing quite well. I believe I saw Big Mac last week, too–at least those little toes looked green from where I stood. He, too, seemed happy and well adjusted, but he wouldn’t come near.

Melody, on the other hand, visits daily. Several times daily, in fact. So often that I leave the front door open in the cool parts of the day so she can come and go as she pleases. She lands on the ottoman where I keep a dish of her food, eats a few bites, then flies away again.

Chip was with me until yesterday. I had become convinced he would be a permanent housepet. Yes, he’d been outside once, stayed overnight and came back the next morning demanding to be fed. After that, he avoided open doors at all costs, even refusing to follow Melody outside when she would leave. But last night he took the plunge, and I haven’t seen him since. He’s completely weaned and I believe well-prepared for living in the wild. But is it selfish of me to wish he’d come back? I miss him. He’s quite the little character, and the house seems empty without him.


I Love Being Right

My husband Scott has accused me of wanting to be right no matter what. He might have a point—especially when it comes to a certain feathered friend I predicted would succeed in the wild.

Yesterday I released Shakey. She was the only one of the four that seemed ready to go. Chip and Big Mac are nothing but two big babies with no sense of danger. Melody broke her beak a few days ago (more on that in a minute) and is still wearing a splint. So I set the cage outside, put Shakey on top of it, and boom. Just like that she was gone.

I worried all day that something horrible had happened to her. Every other bird I’ve released has come back at least once or twice for food or comfort. Not Shakey. I watched the windows, set the two boys outside as bait. . .nothing. Ah, well, I thought. Win some, lose some.

Then this morning I saw something curious in my front yard. An adult starling was feeding a juvenile starling, which was fluffed up looking all cute with its beak wide open. And sure enough, the adult popped food into its mouth.

I looked closer. It sure did look like Shakey. Right age, right size. . . .

Then the juvenile flew to the cage where her brothers were taking their morning sunbath. They greeted each other like the long lost siblings they are, with lots of chirps and tweets and screeches. Then Shakey flew away, leaving Chip and Big Mac having fits in the cage where they could not follow.

Soon, boys. Very soon.

But Melody, poor Melody. She flew into a window Monday morning and at first I thought it killed her. It certainly knocked her loopy. Her head bobbed on her little neck and she listed to one side, and her wings slid down to drag the floor. . .oh no! I just knew she was a goner.

Turns out she was only stunned (probably a mild concussion,) because within half an hour all her neurological function had returned to normal. But her beak sat sideways! This would never do. Not only would it affect her ability to eat and drink, but her mouth would dry out and all sorts of problems might result.

I’ve splinted birds before, so I knew that good old masking tape is the best thing to use. Ordinarily I take measures to keep the adhesive off their skin and feathers, otherwise removing the splint might re-injure an unstable fracture. But in this case I just taped her beak in the correct position, much like one would wire a broken jaw shut. She didn’t eat the first day, but I made sure she stayed hydrated with Gatorade drops in the corner of her mouth.

Tuesday morning I removed the splint and her beak was only a little crooked. She ate and drank as best she could, and when she’d had enough, I taped her back up. This has gone on since Monday, and today I was able to leave her out of the splint for about an hour. I think she’ll heal just fine, and in a few more days, she should be completely back to normal.

And, I hope, flying wild with her sister.

Bird Brains

I’m a few days from releasing the first still shots from the Outlaws trailer, but in the meantime I thought I’d give everyone at peek at how things are progressing with our feathered friends. After dealing with this bunch, the term “bird brain” will have an entirely different meaning for me.

Hey, these guys are smart.

They’re clever, in a deductive, mathematical sort of way. When I present them with a new problem, you can see them figuring things out one element at the time. Shakey seems to be the most logical and, I suspect, female.

Last night I added a new bath for them, a tray tucked into a laundry basket surrounded on all sides by towels. They have to hop down through several tree branches to reach it. This simulates access to hidden pools of water in the wild. The other three took my word for it that this environment was safe. Not Shakey. She watched from a perch high above as they fluttered and splashed in the water. When they were finished, she slowly began to ease her way down. After several tentative runs through the obstacle course I had created, she started mapping the exits. Down, down, down, then up and out taking a different route each time. Only when she had several escape routes planned did she finally venture into the water and have a nice, long bath.

If I had to wager money on any one of the four being a successful release, I’d place all bets on Shakey. She’s aloof and suspicious, hates to be handled, and got her name from the way she shakes her food violently before swallowing. Simulating bug kills, maybe? Yeah, she’ll do just fine out there in the wild blue yonder.

I worry about Chip, though. He was the first to be rescued, the one who fell from the nest onto my concrete basement steps. Even though he’s only been in human hands one day longer than his siblings, he’s definitely the most tame. He flies to me and lands on my shoulder, my head, my laptop. . .he likes to sit near me and be social. I do plan to release him, but I figure he’ll be at the most risk because of his lack of fear. I hate that, too. He has the most pleasant personality.

Then there’s Big Mac, with the voracious appetite (I swear he could eat an entire Big Mac by himself.) He’s aggressive and will peck my hands when I reach for him. Melody is the shyest and has an ear for sound. She’s already composing little three and four note tunes—nothing remarkable, but still impressive for her age. She’s the easiest to identify at a distance because of the distinctive light barring around her eyes.

So how do I tell them apart? If you look carefully at the photos, you’ll see that everyone is wearing a different color nail polish on their little toes. Chip wears blue, Big Mac green, Shakey red, and Melody pink. How do I know if they’re male or female? I don’t. Starlings are nearly impossible to sex at such a young age. I’m just guessing based on body mass and temperament. It doesn’t matter one bit if I’m wrong, either.

Now that they’re flying, I’m sure many have wondered why I don’t release them. Premature release is the number one reason most amateur bird rehabs fail. Just because a baby bird can fly does not mean it knows how to live. In the wild, once a baby bird “fledges,” or flies from the nest, its mother will continue to feed it for several weeks as it flies around the neighborhood. Young birds haven’t a clue how to pick up food with their beaks, much less forage. One of the most entertaining things about these four right now is their efforts to grab items from the floor. They open their beaks wide, wide, wide, then scissor them back and forth repeatedly with no real idea that they should latch on to the desired item and hang on. They still gape to be fed and do not eat independently. This is a normal stage of their development and no cause for concern.

But they’re starlings, you say. They should be shot on sight, not released back into the wild. I know, I know. And on one level I agree. Starlings are an invasive species that wreak havoc on our native bird populations. They’re originally from Europe, but in 1890 the president of the “American Acclimatization Society” had the bright idea to introduce every bird species mentioned in the works of William Shakespeare. He released about sixty European starlings in Central Park, and since that time, the North American population of these birds has exploded.

Opinions of starlings can be quite polarized. The birds are highly intelligent, can mimic a wide variety of sounds including human speech, and make excellent, willing, and happy pets where such practice is legal. In the wild, they are so aggressive with feeding and roosting behavior that they can drive a milder native species completely from its territory. Large flocks of starlings pose a significant aviation risk and are, in fact, the documented cause of several crashes. In 2008, U.S. government agents poisoned, shot, or trapped more than 1.7 million European Starlings on American soil. I can’t bring myself to oppose such drastic measures, even though I’m a fan of starlings in general. I can’t personally bring harm to an animal in need, but I’m not blind to the bigger picture, either. I’m just as sympathetic toward a starving predator with young mouths to feed as I am toward its terrified prey. It’s an ethics quandary that will confound and confuse me for the rest of my life.

The Syzygy Trailer

Yay! Today is the day Amanda’s trailer goes public. You can watch the higher quality version HERE. Be advised we’ve had some issues with this hosting domain, so if the video doesn’t play for you, you can also watch it on YouTube HERE. We’re working to get those issues resolved, so if you do have trouble viewing the video, please let me know.

I noticed last night that the email notification about my bird post came into my inbox very wide, so wide I had to scroll back and forth to read it. I assume it has something to do with the size of the photos, but I’ve uploaded large picture files before and not had that problem–at least not that I’m aware of. Please accept my apology if you encountered the same thing.

Time to go feed the birds. They’re all screaming at me today. I wish you could hear them.

For The Birds

Good news! Amanda’s trailer for Syzygy is finished! I’ve been working on a way to offer a higher quality streaming video–YouTube converts everything to flash, which destroys a lot of visual crispness–but I’ve had some codec issues. Those seem to be resolved now, but I’m waiting until tomorrow before releasing the video. It will be hosted by a private company as well as YouTube, and I will post the links as soon as I feel comfortable with the video’s performance in high def.

But first, I have another critter story to share. Monday morning, fifteen minutes of flower-watering turned into a three hour ordeal as I watched a trio of baby starlings do half gainers out of their nest. I put them back. A short while later, out they came again. I put them back. The next time I saw them creeping toward the edge of their nest in the eaves, I knew I had a problem.

Before I committed to raising them myself, I knew I should investigate further. First I ruled out a predator, like a snake. No snake. Then I discovered the whole portico over my basement door is crawling with avian mites. And to my horror, so was I! Eeeek! I did consider that this severe mite infestation was driving these babies out of their nest, and I still think it’s a possibility.

However, the most likely scenario is a rather unusual one. Or maybe it isn’t. I don’t know enough about natural nesting habits of European Starlings to know if this is typical behavior. But it seems that two, possibly three broods of babies hatched in the portico eaves within weeks of each other. It also seems that there was quite a bit of communal intermingling—every parent fed every open mouth it saw, whether it was their offspring or not. (Remember, I’m just guessing here based on the nesting arrangements I found.) Well, the oldest brood evidently fledged recently and is now living in the massive spruce at the edge of my yard. Wonderful! Except. . . .

The middle brood of nestlings apparently hears the adult starlings calling to the fledglings and tries to follow Mommy’s instruction, which is: “fly away!” Except they have nothing but fuzz and a few pin feathers, and the instant they launch, down they go.

Yes, the mother bird would continue to feed them on the ground. But if the cool mountain nights didn’t get them, the cats and possums would. So this middle brood has zero chance of surviving on the ground. European Starlings are considered an invasive species, and most naturalists would just let them die. But I can’t. I just can’t. They’re so helpless and innocent at that age. Maybe if they were cute like baby rattlesnakes I could kill them myself. But they’re smart and social and full of personality. . .it’s just not in me to do them harm, even passively.

So now I have four babies to raise. And the harrowing job of facing all those mites again to look for a younger brood that I suspect is still there, cowering in the eaves. Thank God avian mites are fairly easy to eradicate. Sevin Dust is very effective against them. They don’t live very long away from an avian host, and soap and water cleans them off human skin. But still. Who wants to look down and see thousands upon thousands of tiny “pepper flakes” crawling up one’s arm? Eeewwwwww.

I’ll continue to blog about the progress of these babies, right up until the day of their release. And yes, most of the time release into the wild is actually pretty successful with this species. As long as they’ve learned a proper fear of predators and are appropriately skittish, they’ll thrive in almost any setting. In fact, babies I’ve rehabbed and released in the past would keep returning to be fed for several weeks after they were living in the wild. Pretty cool, actually, to be walking through the yard and have a bird land on your head screaming for dinner.

I’ll also keep you posted about the status of Syzygy’s release. I can’t wait until it goes public! I’ve already started on the next trailer, and will have more to share about it soon.

Here is a picture of the babies. You can see the three new guys are hunkered down as low as they can get, not very happy birds. They’re eating fine but aren’t very social.

If you have trouble sorting out what’s what in the middle of all those feathers, just look for the row of bright yellow beaks lined up along the front of the basket. And then there’s Chip, the first baby I found, head sticking straight up as he sits on top of his siblings. He has enough personality for all four birds. If in doubt about that, consult the next photo. He was yelling at me. No, really. I’m not kidding. He talks all the time. Constantly. Even titters in his sleep. I named him “Chip” because that’s the sound he makes when he’s happy. “Chip, chip, chip, chip. . . .” I have a feeling he and I are going to get along just fine.

A Third Article

And the great big animated snowball that is machinima just keeps growing. Check this out, all you Lord Of The Rings fans:

Elijah Wood Voices Machinima Villian

Two Very Interesting Articles

A while back, Safeguaard’s online magazine discovered my blog and placed a link to it in their library of machinima articles. This thrilled me to death and has earned me quite a few views that I wouldn’t have gotten otherwise. So I subscribed to this magazine and now get several notifications a day about interesting machinima-related articles.

Today, “interesting” doesn’t even begin to cover it. First, I learned that Google has invested in an online organization called “Machinima.Com.” I’ve known about Machinima.Com since my first days in the machinima community, but this move by Google assigns it a whole new level of importance. Not to mention the fact that it validates my work on these book trailers in a way I knew would happen eventually–just not this soon. Read the Forbes article here.

Then Safeguaard posted another link to an article about Amazon’s influence on the current publishing world as well as movies and video production. It echoes everything that’s being discussed and debated in professional writing circles worldwide. Read the CNET article here.

Hope you enjoy these articles. I certainly did!




Twirling Hats

A certain scene in the Syzygy trailer has made me cringe with dread since I first decided to include it. It’s an understated scene, a quiet moment when Amanda wrote a simple action for Tom that precedes a key line of dialogue. In the novel, he’s listening to a tense conversation between three other characters, and he’s twirling his hat on his finger. I picked up a hat and twirled it myself, and learned that it is, in fact, possible to do this without launching the hat clear across the room. But when I contemplated the physics of the interaction between my finger, hand, and the hat, I knew I was going to have quite a challenge when it came to recreating this effect in iClone.

Sure, I could do a simple keyframe animation, rotating the hat manually at regular intervals on the timeline. But I knew even before I experimented with it that this would render a stiff and artificial result. One thing I’m already struggling with is creating realistic and smooth animation. I certainly don’t want to settle for clunky keyframing if there is an alternative.

Thanks to Reallusion, there is. iClone5 gives us tools to assign real-world physics properties to almost any prop, along with a tremendous amount of control over how we use them. I wish I knew more about the history of real time 3D animation, because I’d like to know just how revolutionary these iClone physics properties really are. At this time, I don’t know of any other commercial machinima application that offers this feature.

All this aside, when I tried to animate the twirling hat, I could not, for the life of me, get the correct physics response from a logical sequence of cause and effect. I won’t bore you with all the details, but the short version is that I finally just engineered the thing in reverse. Instead of making the hat respond to the rotation of the hand, I made the hand follow the rotation of the hat. I did this by animating a cylinder, which is invisible in the rendered scene. I put the cylinder into a constant state of rotation using keyframes, then I used it as the kinematic “engine” that drives the hat. I assigned the hat a dynamic physics state and played with pivot points and axis locks until I got the right effect. Then I attached the hand to the hat, and while I had to get extremely creative with dummy props to prevent the wrist from making unnatural 360 degree rotations, I did manage to come up with a fairly convincing animation. Watch the end result here:

This is the first video clip I’ve released from the Syzygy trailer. And while it’s extremely short, it should give everyone an idea of what to expect from the finished product. I slowed these frames down so you’d have time to see the animation, but the twirl is somewhat faster in the trailer.

I’ve also uploaded some more pictures from the set, including two characters Amanda has never seen. They would be Collin, Finn’s father, and Dr. Malum, the evil scientist:

Then, of course, we have Finn, and another snapshot of Tom. The shirt and suspenders combination you see Tom wearing is the very first mesh I created in 3DS Max and imported into iClone. I’m still amazed by the level of detail, and by the sophisticated bone weights that allow the suspenders to drape so naturally across the front of the shirt. Yay, me! I did a heck of a job with that outfit, even if I do say so myself.

Finn jumping onto the roof with Bea:

And here is Bea on the roof. She’s dressed to match the novel’s description of her as closely as possible. Please notice that her skirt folds and drapes to the ground rather than sticking out around her legs like a bell. This was a very big deal for me, as it was my first experience with “Flowcloth.” “Flowcloth” is a third-party creation offered by a developer called “Apparition” in the Reallusion Marketplace. It’s the first third-party content I’ve had to purchase, and I didn’t  buy it only for Amanda’s trailer. This is something I will be able to customize and use over and over again for any character wearing a dress.

When I made the “Left On Stonehaven” machinima based on Carol Kean’s novel (using Sims 2 as the platform, not iClone) , I had to actually create two separate meshes for the Romany character to wear as she slid down the wall—one that was shaped normally and one that was fitted around her legs once she was sitting. Keep in mind that every mesh is “stiff” without physics properties, and while they move with the bones they’re assigned to, they do not respond to gravity or other “natural” forces. Therefore if I’d left her in the original nightgown mesh, the front of it would have poked up above her knees and obscured her face, like a bell lying on its side.

If you look carefully at these photos, you can see the difference between meshes. Also, I’ve included a still shot of a transition frame when neither mesh worked just right and her legs bled through. With the original mesh, the skirt was equidistant from the front of her knee as well as the back of her knee (although it disappeared into the wall behind her. Oh, well.) In the next picture, you can see that the mesh is not equidistant from the sides of her knees at all. This worked great for the final frames when she was sitting, but see what happens during the transition: there is significant bleedthrough in the thigh area. There was nothing I could do about it. I spent several days on this problem and this was the best result I could get. I finally just had to film it and hope the frames went by so quickly that no one would notice.

Thanks to “Apparition,” this issue doesn’t have to be a problem with iClone5. Interested iClone directors can find the Flowcloth here.

Once again, thank you for reading and following my blog. Stay tuned even after I’ve finished and released the “Syzygy” trailer—for my next project, I’ll have to animate a horse. Hearing about my misadventures with that one might make some first rate entertainment!

Two Hours, Three Cups of Coffee, and Four Ibuprofen

No, I’m not going to blog about my struggles with lupus. But the moment those words fell out of my mouth, I knew I’d have to use them some way, some how, as a title for some thing. They were my deadpan response to my rheumatologist’s question: “How long does it take for you to shake the stiffness and pain every morning?” Yeah, well. . .that one-liner pretty much sums it up.

The real reason I’m blogging today is to post a link to a video produced using iClone, the animation tool I’m trying to master. I don’t know the creator of this little film, but it is a wonderful example of what can be accomplished with the software. Kudos to “norte43” for this very well-done machinima.

You don’t have to like Michael Jackson’s song “Thriller” or even watch the entire 2:45 second clip to appreciate the possibilities. You don’t have to relish the macabre or bizarre to understand how many ways this technology can translate. The variety of characters, the smoothness of the animation, the lighting and camera work—all of that is native iClone5 and it is exactly what I’m striving to emulate in realistic production. This machinima was created by a true master of the craft; my work is not up to this standard yet. But it will be, if I keep my nose to the grind and stay focused. I need the Kinect and MoCap technology to achieve the seamless, realistic animation you’ll see here. But I’m saving my pennies and dimes, and one day soon I’ll be able to boast production work that is on par with this little dance video. I would love to deliver book trailers that match this video in quality and execution. That is my goal.

(You can skip forward to the 15 second mark to see what impressed me so much.)

“S” is for “Service”

The “A to Z Blogging Challenge” is a train that left the station without me this year. But since I follow several bloggers who participated, I know that today is “S” day. And guess what? I have an “S” topic to share, even if I’m not officially part of the challenge. Granted, it’s a topic that will be of little interest to some of you, but for the machinimators who stumble across my blog on their search for nuggets of truth about Reallusion and iClone. . .keep reading. I have a goldmine of personal experience to share.

A few nights ago, while flipping through the TV channels, my husband Scott and I caught the Blue Collar comedians in reprise with the “Them Idiots Whirled Tour.” Say what you will about our tastes in entertainment, but yes. It was good for a few laughs.

I particularly enjoyed Bill Engvall’s recount of an experience he had with a satellite TV provider’s customer service department. Or rather, with the disembodied, computerized voice that has replaced it. Yeah, you and I both know the voice he meant. You state, “I have a billing question.” And the polite-sounding robot voice replies, “I heard you say, ‘I have a heel impression.’ Is that right?”

Bill Engvall declined to identify the satellite TV provider whose robot he cussed, but he did assure us that it “wasn’t indirect.” We hear you, Bill. I’ve had the same problem with Time Warner Cable. And Verizon. And several other behemoth service providers who forgot that they were supposed to actually be providing a service.

But Thursday night I had a different kind of experience. By now, all of my regular followers know I’m up to my eyeballs in an iClone project that will (hopefully) result in a book trailer for Amanda Borenstadt’s novel Syzygy. Every now and then I realize I haven’t purchased all the software or accessory devices I need to actually make this happen, and sometimes those items must come from Reallusion Marketplace, the third party vending site of company that develops and sells iClone products.

I won’t bore you with the details of the mess I made of an order Thursday night, but it involved money and stupidity—namely my own. I made a big mistake during the order process that resulted in my being unable to download the product. Not sure if I should puke or panic, I dashed off an email to Reallusion customer support and resigned myself to waiting days (weeks?) for a response that might not even be helpful.

Surprise! Within a couple hours, I received a message from “Jollen” at Reallusion Inc. Technical Support. Not only was Jollen polite and personable, but very effective at resolving my problem. I have not experienced customer service like this from any company or any provider for so long that I’d forgotten how it feels to be satisfied with an outcome.

If you are on the fence about investing in iClone or any other Reallusion product, I don’t mind giving you a little push in their direction. I have not only been pleased with the products themselves, I have been blown away by the powerhouse that is iClone5. Even more, there is an arsenal of free tutorials offered on the Reallusion home site that are straightforward enough for even a legendary technophobe like me to follow. And then there’s the customer service. . .real humans using real brains to provide real support for outstanding products. You just can’t get any better than that.