^/\*$
^ \* ? Licensed to the Apache Software Foundation \(ASF\) under one$
^ \* ? or more contributor license agreements\.  See the NOTICE file$
^ \* ? distributed with this work for additional information$
^ \* ? regarding copyright ownership\.  The ASF licenses this file$
^ \* ? to you under the Apache License, Version 2\.0 \(the$
^ \* ? "License"\); you may not use this file except in compliance$
^ \* ? with the License\.  You may obtain a copy of the License at$
^ \*$
^ \* ?   http://www\.apache\.org/licenses/LICENSE-2\.0$
^ \*$
^ \* ? Unless required by applicable law or agreed to in writing,$
^ \* ? software distributed under the License is distributed on an$
^ \* ? "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY$
^ \* ? KIND, either express or implied\.  See the License for the$
^ \* ? specific language governing permissions and limitations$
^ \* ? under the License\.$
^ \*.*