Yes, they're completely automatic. If we talk about a programming job, we have a routine in place. When we get an order for a new job from our customers, our customers will tend to give us their blank devices. With blank devices, you could have 10 different blank devices, but there's also a one-to-many relationship between the blank device and the programmed device. The customer may have 20 different programs that they want run in to the same blank device, and on top of that they will have cycles of "up revs" or engineering change orders as the firmware gets up revved for various things throughout the life cycle of the product, and all of those up revs in firmware need to be managed throughout the programming cycle.
We have a first article master process, and the first article master process is done when we program the very first device of a new revision of firmware. Those few sample parts are programmed and sent to the client with complex documentation that enables them to test the veracity of those parts and that they have been programmed correctly, that they have been handled correctly, etc. They test them in their lines, and then certify that back to us that they approve that this part has been programmed correctly, and that enables us to put that rev of that part into production.