Discussion in 'Fan Art' started by Cary L. Brown, Apr 24, 2009.
That is truly amazing, keep up the good work!
Thanks! It's one of those things that is so ill-defined, you can put more of your own creative juice into it.
I haven't really done much on the Enterprise itself today. Or rather, nothing tangible. However, I did spend some time tonight on something very Enterprise-related... the shuttlecraft and shuttle bay.
I asked Warped9 if he'd mind my using his drawings, and he said OK. I thought I might just use them as reduced-size images to do some sizing, but the more I thought about it, the more I wanted to have a real shuttle. So, I've started (and only JUST started) making a shuttle model based upon his drawings. I thought I'd caught an error at one point, but it turned out that there was only a scaling factor difference... and I'm now getting the basics of his shuttle down in 3D. I won't do the guts (at least not for the moment) but since I think his work represents the best take on the shuttle to date, I wanted to try to fit that version of the shuttle in.
Here's where that model stands so far. There's a lot of work to go. For the time being, it's sufficient for my needs (determining necessary space), however.
Putting that into the 1067' starship's shuttlebay, it looks like this.
Seen from the side... and parked near the forward bulkhead of the bay (which will be defined by the pylons)...
Now, I was wondering if I needed to use different deck spacing in the secondary hull. In THEORY, using Warped9's shuttle, I could get by without doing so. You'll note that the upper "lips" of the shuttle (indicated by the parallel blue lines) actually intersect a 9' ceiling, and would just barely clear a 9'4" ceiling (see Ancient's post a few lines up). I'm not sure I like being that close, so I may space that deck out a bit more. But technically, it's not "necessary" if I leave this at 9'4" per Ancient's calculation.
Now, a pair of wireframe images to help visualize the general size and shape from end-on and from above.
With the 1080-ish scale, you can fit the whole shuttlebay behind the pylons, though I might choose to "halve" the pylons in this region... I haven't decided yet I'd still really like to keep them continuous all the way to the secondary hull axis... but I don't want to compromise on the on-screen shuttlebay. My intent is to have a pair of "accessways" coming aft next to the pylons from the shuttle parking areas on either side. The area with the elevator will be the repair/maintenance shop, not a parking area... but will have enough space to allow "shifting around" the several shuttles carried by Enterprise.
I'm not sure how many shuttles the Enterprise would carry... I know that this has been debated extensively, but as far as I know, there hasn't been a consensus arrived at, has there?
That's some cool stuff right there. Nicely done.
How much of the nacelle struts are structural? I'm asking because you show the struts as one continuous volume reaching down into the secondary hull that seems to include the outer skin. I can imagine their interior containing structural components that support the attachment of the nacelles along with engineering components for cooling, power transfer, etc. woven between them. If the forward and aft parts of the struts aren't structural, but coverings over engineering bits, might you save yourself a couple of meters here and there? Only the structural support elements need to meet at the axis of the secondary hull. The sheathing stops at the secondary hull's skin, and the engineering bits fan out and get where they're going by whatever route necessary.
Yeah, that's something like what I was thinking, too... the real question is "what do the structural elements look like?"
What you see below is my "first pass" on this.
My initial take on the nacelle pylons is that they've got a largish "box beam" in the center, with a pair of "C-channels" on the leading and trailing edges, all linked together with only intermittant drilled-out regions for pass-throughs of various types.
Note that, unlike MOST of what you've seen from me, what you see here as "solid" is intended to be just that... solid. Imagine these as extruded steel (or "duranium" or whatever) shapes, welded together and given a heavy coat of paint.
There's plenty of room inside the channels for running power and utilities and so forth, as well as having a "jefferies tube" (or more than one?) for access to hardware. Maybe even a lift of sorts for maintenance access to the nacelle?
Now, I plan to use something similar to that, but I'm not convinced I've got it "right" yet. Perhaps I go with three identical "box beams," or a single extrusion, or two boxes with a structural linkage between them?
The reason I want box-beams is that they're very effective at resisting torsion, something that more conventional open beams (like I-beams) aren't nearly so effective with. I see the nacelles as being under tremendous torsional force, so the nacelle pylon needs to be designed to resist that. Tensile force isn't nearly so much of a concern... the majority of force seen by this structure will always be torsion, around any of the three principle vectors.
I'm actually thinking about doing a little FEA problem to determine the best practical construction for this structure. Maybe even doing it with the "strongback" and dorsal included as well?
The one weak point in the TOS design which I can't see a practical way around is the interface between the primary hull and the dorsal. It's fine in any of the three major translational vectors (forward-aft, port-starboard, up-down) and for torsion in two of the vectors (yaw and pitch) but it's inevitably going to be fairly weak in roll. Unfortunately, there's nothing to be done about that other than adding additional structure to the dorsal (not in the way that was done for ST-09, by the way, which really doesn't help in roll, does it?). The Galaxy class "flair" (or a triangle with two dorsals at angles, perpendicular from the secondary hull axis) would be the best solution... but that's a different design, not the TOS Enterprise. Oh well...
Cary, regarding the deck below the hangar, I might suggest simply having that section/room have a 'stepdown' from the rest of the deck to allow a safer clearance for the shuttles.
Also, I don't think we've ever reached concensus on the number of shuttles. Common sense would suggest seven based on the '7' on Galileo, but for all we know there are only two Class Fs (Columbus and Galileo, and of course then the replacement Galileo-II) and everything else is a different type - among them, inspection pods inspired by Jefferies's unused drawings perhaps?
If we assume that the ship didn't have any landing-capable shuttles in 'The Enemy Within' we might then conclude that the embarked craft load changes frequently and there is no 'standard' set.
This is fascinating. I've never seen anyone model the ship starting with a 1080' size and working backwards. I'm intrigued to see how this evolves.
I assume the Enterprise carries four Class F type shuttlecraft based on the onscreen reference in "The Omega Glory" that all four of the shuttlecraft were still aboard the Exeter.
Brilliant! In my ignorance, I imagined either a single super-science I-beam or a quad of box beams, but I like the look of this. The only thing I'd caution you about is the four grills visible on the inside of each original pylon. These suggest to me that there's some kind of open space beneath them.
Torsional? Do you imagine the engines tending to corkscrew around their axies or did I just read something into your description you didn't actually put there? I'd argue the warp engines don't add any significant force to the vessel. Rather, they "just" warp space and everything within that warp moves. The only forces I see operating on the nacelles would be inertia when the ship accelerates using impulse engines or turns/banks. And even that may be greatly diminished depending on your view of intertial dampers.
EDIT: Yeah, I definitely think I misread you ... I don't know why the image of each engine "wanting" to twist around its long axis popped into my head on the first read.
Maybe it's best that Google failed to enlighten me on this issue, because I'd really rather not be caught faking any understanding and BS'ing my way through a reply. The depth of my exposure to engineering was writing programs for instrumentation engineers and reading P&I diagrams. So I'll ask: does "a little FEA problem" (finite element analysis?) mean you're going to calculate assumed loads and try to find an arrangement that gives you good numbers?
Would it help matters if you assumed the rigid components of the dorsal went through the primary hull with the latter attached to the sides? Maybe that structure above the impulse engines is also involved.
Well, The inner "beam" isn't going to be the exterior skin... there will be a bit of hullwork on top of this, if only to provide a means for handling deflector shielding and so forth. It's not anything comparable to the "hull thickness" I've got elsewhere (which consists of mechanical elements, exterior skin, interior skin, probably some self-sealing compound, etc, etc).
I haven't forgotten about the grillwork. But, Vektor's version aside, I haven't seen any indication on-screen that the grillwork need be inset INSIDE of the hull skin. Rather, it looks to me as if these grills are applied to the skin.
My take on those grills is that they're radiator panels... probably the primary energy rejection system for the entire ship. There are also dedicated radiators for the warp nacelles and for the impulse reactors... the impulse one being the "fabric" we see on either side of the impulse deck, and the m/am reactor cooling system being on the nacelles themselves, since I reject the idea of the m/am reactor being in the secondary hull, and rather prefer the idea that the power is being generated on the 1701 in the nacelles themselves. In fact, I intend to implement a variation on the fan-pub "nacelle interior blueprint" from the late 1970s... which itself borrowed a bit from an episode of the animated show.
As radiator panels, they can be very thin. They're usually highly-conductive materials (copper, aluminum, etc) with fluid-flow capillary networks to transfer heat in, and a black surface (since black radiates better than any other color... just like it absorbs better). The thickness is really governed by "how thick do they need to be in order not to be too fragile" than anything else. So my plan is to have these be right there on the surface.
Well, imagine you're holding a wrench. You apply a translational force to the handle, but where it become torsion over the length of the wrench. Force x radius = moment. A longer wrench handle lets you generate more torque with less force.
Now, imagine that the Enterprise turns. The nacelles aren't symmetrical, front to back, and the attachment point isn't at the centroid, either. So, the inertia of the nacelle will generate a torque. Same thing for a climb or a roll. (This is part of the advantage of the TMP nacelle pylons, and part of what is so much worse about the Abrams-prise.)
If the ship is operating in an inertia-less mode (as I tend to assume warp drive normally is) then this isn't an issue. But when moving under impulse power, the slightest manuever in any direction will apply a significant torque load on the structure, greater than the associated translational force.
Does that make sense to you? It's basic "mechanical engineering 101," statics and dynamics. But I know most folks in here haven't had the benefit of that sort of an education, so it's not surprising that it might not be well-understood by lots of people here.
Just imagine that you have a home-made "Enterprise" model on the hood of your car, and start driving around wildly, and imagine the forces the model will see as you squeal around corners.
My bad... another "mechanical engineering" concept.
FEA (as you correctly surmised, "finite element analysis") is a computational method of determining the effect of loads on objects and systems. You break the system up into a tremendous number of very small, very simple elements, each of which is governed by a small number of simple equations. The equations, however, form a very large matrix, which can only plausibly be solved by computer.
FEA allows you to determine the stress, strain, deflection, etc, etc, to an object or assembly when under a given mechanical load. It can also be used to determine thermal flux throughout a system, or magnetic field densities... all variety of things which are effectively impossible any other way.
Basically... think of it as a "what if" tool... "if I apply a lateral force of 600N at the aft end of the nacelle, how much of an impact does it have on this pylon structure? And how much does it have on this OTHER pylon structure?" That's sort of what I'll be doing here... applying simple loads and determining which structural approach is the most effective... the strongest.
Oh, it is, it is. But think "torque" again. The saucer is very wide. Any force applied at the far port or starboard edges translates into a tremendous torque at the attachment point. Apply an upwards 10N force at the starboard edge, say. That results in a translational upwards force at the attachment point... of exactly 10N. But (and since I'm at work and can't measure things right now) let's say that the point of the force being applied is 200m to port,and 250m forward, of the dorsal centerline at the point of attachment. This means that there will be a "roll torque" (that is, around the forward-to-aft axis) of 10N x 200m, or 2,000 N-m, and a "pitch torque" (that is, around the left-to-right axis) of 10N x 250m, or 2,500 N-m. Now, suppose that the leading edge and trailing edge elements of the dorsal-to-primary attachment are 50m apart. Each element will, as a result, see 2,500 N-m/50m, or 50N of force. In one case, it will add, in the other it will subtract... so the vertical members of that attachment system will see +60N and -40N.
That's not bad... but now, consider the roll torque.
Let's say that the dorsal is 5m wide. And the torque applied to those elements is 2,000 N-m. That means that port and starboard elements will carrycarry (2000 N-m / 5m = ) 400 N, from that little 10 N applied force. As above, it will add or subtract depending on the side it's applied on, so you'll see +410 N and -390 N loads.
That joint is inevitably the weak point of the entire ship... much moreso than the nacelle attachment points. Do a hard port or starboard turn, and the saucer would be probably rip and rend away from the dorsal. So this particular detail is the one where I really can't see a realistic mechanical solution, and have to accept "filmmaking magic."
Cary, that post should be a sticky in the starship design and construction thread ... if there was one. As you explained the forces, I immediately saw the warp nacelles as wrenches and understood much better than before the difficulties involved. Suddenly, the 1701-D looks like a much smarter starship!
It is. I've never really been fond of the "style" of the 1701-D, and I don't care that much for the eggshell-thin nacelle pylons (which should be straighter and thicker) but otherwise, yeah... it's a better design overall. This is, in large part, due to the fact that Andrew Probert "gets it" regarding practical design. He may not be a PhD science guy, but he brings to the table the same things that Matt Jefferies did... practical understanding of "why things work."
That's been my biggest issue with everything I've seen in Trek since the beginning of TNG, really... technical matters being addressed by people who clearly have little or no real grasp of the real-world considerations, or in some cases being addressed by people who do "get it" but who are being directed by people who don't know and don't care about real-world concerns.
Where things are made to "look like they do something cool" instead thinking through WHAT they do, and WHY they're the way that they are. That approach leads to bad decisions and bad results... even if they spend more than any other production has ever spent to get to those results.
Okay, I've done a bit on what I discussed earlier... implementing structure and planning out decklines in the secondary hull.
First, a couple of quick views showing the partially-completed internal structure. Note that I set the inside diameter of each of the ring structures to be the same. This is not likely to remain the case... at the very least, I'll trim some of that away. But for now, perfectly-circular works best.
I've decided not to extend the landing bay underneath the pylons. This is in large part due to the following image. Yes, I know, there are many things here that I'm disregarding (and that were disregarded in the construction of the series models and sets and so forth). But it's pretty clear that M.J. intended the hangar to be behind the pylons... and that's enough for me.
Here's the structure I've built so far:
There will be a number of longitudinal sections running from fore to aft, between the various ring segments. At least two of them will run all the way to the aftmost ring in the secondary hull (just inboard of the hangar doors). You can see that ring in this image, as well as the two longitudinal supports.
By laying things out this way, I can start seeing what lines up where, versus the drawings. Now, I'm still using Sinclair as my primary reference, and using other versions for comparison. The next two images show the locations of my current "decklines" versus the structure.
My decks are not all uniform in the secondary hull. At the moment, everything above the landing bay deck is uniform, but I think I'm going to increase the deck height on the landing bay deck... which should make the windows match up much better from that point upwards. The only place that won't help with is with the windows adjacent to the "observation deck" walkway... which is actually less than a deck above the hangar floor, odely enough. Of course, with a smaller ship, this will be even less. So I'll either move those windows higher (which is my preference at the moment) or accept that the observation gallery isn't even a full deck above the landing deck floor.
The hangar deck (below the landing bay) is largely defined by the underside of the landing bay deck, above, and the location of the "red rectangle" (which I definitely see as a hatch) below. This ends up with a 9' 4" height... well, technically, 9' 3-27/32"... for that deck. No, I didn't plan that... it just worked out that way. Very interesting, though.
This, of course, will "barely clear" Warped9's shuttlecraft. At least they can't "bounce" if the ship gets jostled!
Below the hangar deck (two levels below the landing bay) is what the level which is defined by the red box door on the underside fantail. That's definitely a hatch... though to what, I'm still undecided. I like Petri's "workbee dock" but I also like it as a cargo loading hatch... especially since I've made the deck below the "hatch level" dominated by an increased-height cargo bay.
Also, based upon the side elevation, you can see that my "equal segments" pylon isn't acceptable. I'll have to increase the percentage of the total span encompassed by the centermost chamber in the box-beam, to prevent the pylon window from falling on one of the box-beam's internal walls. Unfortunate, since the "three equal segments" is definitely the strongest option. But in this case, I'll just adjust to fit the model.
Now, this is some cool stuff.
Regarding the "no bouncing around" shuttlecraft.
One of the things I tried to address were the extendable landing pads, both the front pair and the aft one. In scaling up the exterior to its present size I was mindful of the step-up height for ease of entry and exit.
Now when you look at successive Trek shuttle designs they dispensed with the extendable landing gear in favour of touch points or the entire nacelle serving as a landing pad. I did something similar with my enhanced shuttlecraft design by having slim rails running the length of the nacelles much like a helicopter setup.
I really can't think of a rationale for the TOS landing gear other than it looks interesting. Well, perhaps it makes it easier to land on uneven terrain. Otherwise it doesn't help anything since they're pads and not wheels to move the craft around in the hangar area.
At any rate you could also consider that the craft could settle down fully onto its nacelles after landing and powering down for storage, or even on a planet surface for that matter. That would gain you a few extra inches.
Okay, a brief update...
I've left the secondary hull alone for the moment, because I've decided to implement separation, and that means I'm going to be saving two copies of this model, deleting lots of features from each copy, and modifying a number of other ones... but keeping certain geometry (almost exclusively dorsal-related) to ensure that the two ship halves fit together properly (since they'll effectively, be made from the same data). In fact, if you look very carefully in the following images, you can make out the separation line.
Anyway, I've spent a bit of time this evening polishing off details on the primary hull exterior. I've got most everything on the topside covered (though there are still a few items... the twin red lines going from C-deck to the dorsal cap and the small red and green running lights). I've created datum curves for all the underside details but just haven't created the physical details yet, so they don't show up in renders. I haven't done anything along the saucer edge yet (except for the fwd scanners... aka "Nomad"), but that will be pretty straightforward. I have completed the "sensor portholes" on the underside, which was more complicated than I'd expected to to the complex curvature in that region. But before the weekend is out, I'll have the primary hull exterior details complete and will have "divorced" it from the secondary hull. Only internal layout (which, except where there are windows to look in through, will consist purely of laying out lift shafts and wall structures) will remain.
I haven't got the dorsal 100% done... internal wall structures (and bracing?) is absent, and of course there's no turbolift shaft yet. But I've got the major spaces completed. Look closely, below, and you'll notice that the windows there are, of course, really "windows." I haven't done the "sensor portholes" here yet, but there are only a few of those on the dorsal, so that should be pretty painless. You should also be able to make out the separation line... currently just a groove in the surface but shortly becoming a real separation between two models.
Zooming in a bit more, you'll recognize the largest "lounge" in the dorsal.
And here's that space, viewed from the inside (as far aft as you can get, facing forward). The ceiling in this space is 8' from the deck, by the way. Not a huge space, but certainly a great place for a "viewing lounge," I think...
EDIT: I forgot to put this in... it's not really showing much new (except for the impulse deck)... but it's a good illustration of the interaction between the landing bay (I call the deck below that, where the shuttles are stored, the "hangar deck"... to be consistent with real naval terminology) and the nacelle pylon structure.
Damn, Cary, that looks really good so far. It's amazing how much space there is in the dorsal observation room. And kudos for calling the landing deck and hangar decks what they actually are despite fan tradition.
Is every window double-glazed like the ones in the lounge?
Well it took a while to load this all on dialup lol but it was worth it, amazing work Cary.
Well, they're not "double-glazed" at all... but I can see why you'd be thinking in those terms.
CAD packages like Pro/ENGINEER are different than "rendering packages" like Lightwave or Maya or 3DS or Blender or whatever. Those are surface-based... they model surfaces without "really" modeling the material between surfaces.
CAD packages model solids, however. So a single pane of glass... one solid... has two surfaces, a front and a back.
That's what you're looking at here - a thick plate of glass (or glass-like material... and NOT "transparent aluminum"... AAAAGGGHHH!)
Here's a section from within Pro/E showing the vertical row of windows in the dorsal.
And a bit more detail.
Note that the hull thickness is a parameter I set up for the model, and this is uniform throughout the ship. Though I'm not required to use a parameter to assign a value to any feature (basically, when I create a feature, I either type in a value, or assign a variable to that value), I've done so uniformly through this ship so far for hull thickness, with the sole exception being the nacelle pylons.
When creating windows (not the round sensor portholes, which I'm doing differently), what I do is create a sketch (or multiple sketches in some cases) representing the window in a 2D state.
For instance, for the dorsal, I sketched them on the "side" datum plane (the one which, if sectioned through, gives the "side-view cross section" I've shown you a few times). For the primary-hull edge windows, I'll do the radial - that is, vertical - lines from the underside view, and the elevation from the side view.
Several people have asked me about how I'm doing this, so I thought I'd give a step-by-step example of how this is done. Realize everything you've seen so far has been geometry... no texture-work whatsoever. Obviously, for rendering work, it's still desireable to have as much of this done as texture, rather than geometry, as possible... but that's not the approach I'm taking here. I'm trying to model the "real" ship," not for rendering purposes but for engineering purposes. If what I come up with eventually becomes used for rendering purposes, I'd hope that the people doing that (probably not me... there are other people who are far better at that than I am!) would "optimize" things for rendering, and probably much of what I'm doing as geometry would be texture-based. My approach is far more precise, but but far too inefficient for rendering use.
First, I've got a fair number of what Pro/E calls "Style" features... including a subset called "trace sketches" which allow me to import bitmaps onto datum planes, scale and rotate and so forth, and use them as references. This technique is central to what I've been doing here. In this case, I have the underside view (reversed, obviously) on my "top" datum plane. I'll do my sketch on the top datum plane as well. (Note that virtually everything starts out as some form of 2D element, and is transformed into 3D. While it's possible to do "freeform 3D surfaces" in CAD, it's not really the main function, and that's not used terribly often.)
From there, I create a dimensioned sketch. I create real, mathematically-precise details which are intended to represent, as closely as possible, what I see in my "trace sketch" feature. Note that there is no real connection between the trace sketch and the dimensioned sketch here, other than I'm "eyeballing" my "real" sketch to be as close to the "trace sketch" as possible.
That (2D) sketch looks like this when completed.
I then "project" that sketch onto the appropriate 3D surface(s)... in this case, several surfaces on the exterior of the primary hull underside. Once this is done, I can hide (not "delete"... in CAD you can't remove parenting like you do in rendering packages) the 2D sketch.
Okay, so I've got a series of 3D curves on a 3D surface, but that's not really useful yet... it doesn't represent solid geometry, which is the language this software really speaks. So, how to convert it into that?
Here's the step-by-step:
1) Select the appropriate geometry - in this case, a surface. (It's possible to do this with multiple surfaces at once, but I did that on the "Vega" and it caused me some problems, so I try to avoid that now if possible.)
2) "Copy" and "Paste" that surface... this creates what is called a "quilt"... a simple surface feature (again, not useful unto itself, but used to create other forms of geometry). Note that, initially, the new "quilt" consists of the entire region originally chosen.
However, it's possible to only copy the portion of the surface within a boundary. This boundary can be determined through any geometry (edges, datum curves, etc), but in this case I'm doing it with my sketched-and-projected datum curves.
3) Note that I did the outside... and I want that to be a "raised edge region" surrounding the triangular detail. This means I need to "trim" the inside region out, to only have that outer strip.
4) At this point, I've got a new "quilt" which is coincident with the solid surface but only consists of the region bounded by the inside and outside "loops" of that shape. I then "thicken" (one of a number of potential solidification techniques available to me in this package) that. I'm choosing to thicken that by 0.060m for most "outline" surface details like this. Note that a surface really needs to be offset to have a different appearance... but also that in a "real" ship, these markings probably aren't "markings" but rather "frames" around hatches or panels or whatever, so they really should be offset anyway.
5) Okay, so now I've got a raised outline. I also want the interior region to be separate from the "normal" hull surface, so I'll copy and offset that as well. Note that when I select the surface, it is now in two regions... this is because the new feature I just created subdivides the surface.
6) I copy this surface then paste it, but I now need to use a different option... which I think is self-explanatory from the below:
7) So now I've got that inner surface copied as a new quilt. I can thicken that, now. Note that I can adjust the "thickening" by direction, I can add or subtract material, etc. To illustrate how this really works, I'll exaggerate the thickening here. Since this "triangle" is my "transporter emitter antenna," I want it to be an applied exterior antenna, so I'm offsetting it by 0.030m. But this shows how the tool really works.
Now, once that's done, I've got solid geometry which matches the information from my "trace sketch." In cases where there are multiple views, and those views don't actually match up (often the case when drawings are done in 2D tools, but never the case if the drawing is done using a 3D tool for what I hope are obvious reasons!) you sometimes have to make "compromise" decisions. In this case, I've shown you the "Sinclair drawing" (which is my primary reference in this project) but I also have been comparing the Casimiro and a few other sets of plans as well, in much the same fashion.
8) However, it's not really visible... it's "too subtle" in this case to even be recognizable. So, I set the color of the surfaces to something different... something "eyeballed" to look like the real models' coloration. I'm not trying to be very precise, here, in that regard... remember, I'm concerned more with geometry than I am with appearance for this project. So I've got a fairly limited pallet of colors I'm using. I can create more, but since (once the design is completed) I'd be creating new "materials" within whatever rendering package I eventually export it to, I don't see much reason to spend a lot of time stressing out over matching colors exactly.
Once all the details are done, the "projected sketch" needs to be hidden, of course.
Anyway... here's the final result.
Obviously, this isn't the ONLY technique I've been using, but it's what I'm using for most of the "surface details" (like my windows). In the case of rectangular windows, I'm creating the surface "quilts" at the window locations, creating offset copies (at 1/3 and 1/2 of the hull thickness) and then thickening them in opposing directions (removing material rather than adding it).
Separate names with a comma.