<!--
  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.
--><svg width="159" height="80" viewBox="0 0 159 80" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M118.155 0C104.467 0 91.9835 7.6653 79.8285 21.0248C67.8926 7.44629 55.0806 0 40.845 0C17.1922 0 0 16.8636 0 39.531C0 62.1984 17.3017 78.9525 40.845 78.9525C55.4091 78.9525 66.5785 72.1632 79.1715 58.5847C91.3264 72.1632 103.7 79.062 118.155 79.062C141.808 79.062 159 62.4174 159 39.6405C159 16.8636 141.808 0 118.155 0ZM41.064 55.0806C31.0992 55.0806 25.0764 48.5103 25.0764 39.75C25.0764 30.9897 30.9897 24.2004 41.064 24.2004C49.4959 24.2004 56.3946 30.9897 63.8409 40.188C56.8326 48.7294 49.3864 55.0806 41.064 55.0806ZM117.498 55.0806C109.176 55.0806 102.167 48.5103 94.7211 39.75C102.386 30.5517 108.957 24.2004 117.498 24.2004C127.463 24.2004 133.376 31.0992 133.376 39.75C133.376 48.4008 127.463 55.0806 117.498 55.0806Z" fill="#F8FDFF"/>
<path d="M97.0207 73.2582L112.899 54.314C106.548 52.4525 100.744 46.7583 94.7211 39.6405L79.281 58.4752C84.3182 64.3884 90.3409 69.4256 97.0207 73.2582Z" fill="#20A8C9"/>
<path d="M79.8285 21.0248C74.7913 15.1116 68.7686 9.96492 62.1983 5.91327L46.3203 25.0765C52.343 27.1571 57.7087 32.6323 63.4029 39.531L64.0599 39.969L79.8285 21.0248Z" fill="#20A7C9"/>
</svg>
