<!DOCTYPE html>
<!--
  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.
-->
<!-- Excerpted from: https://cambridgewi.com/events-calendar/ -->
<html>

<head></head>

<body>
<div itemscope="" itemtype="http://schema.org/Event">
    <div>
        <div>
            <a href="https://cambridgewi.com/events-calendar/?event_rdate=20180729090000%2C20180729170000" itemprop="url"><span itemprop="name">Midwest Fire Fest</span></a>
            <div><span>Jul 29, 2018</span>&nbsp;<span>9:00am</span></div>
        </div>
        <div itemprop="description">Come to the most unique festival in the Midwest</div>
    </div>
    <meta itemprop=" startDate " content="2018-07-29T09:00:00-07:00">
    <meta itemprop=" endDate " content="2018-07-29T17:00:00-07:00">
    <div itemprop="location" itemscope="itemscope" itemtype="http://schema.org/Place">
        <meta itemprop=" name" content="Westside Park">
        <meta itemprop="hasMap " content="http://maps.google.com/?q=300+Water+St%2C+Cambridge%2C+WI+53523">
        <div itemprop="" itemscope="itemscope" itemtype="http://schema.org/PostalAddress">
            <meta itemprop="streetAddress" content="300 Water Street">
            <meta itemprop="addressLocality" content="Cambridge">
            <meta itemprop="addressRegion" content="WI">
            <meta itemprop="postalCode" content="53523">
        </div>
    </div>
</div>

<div itemscope="" itemtype="http://schema.org/Event">
    <div>
        <div>
            <a href="https://cambridgewi.com/events-calendar/?event_rdate=20180731120000%2C20180731130000" itemprop="url"><span itemprop="name">Cambridge Senior Meals</span></a>
            <div><span>Jul 31, 2018</span>&nbsp;<span>12:00pm</span></div>
        </div>
        <div itemprop="description">Cambridge Senior Meals are served&nbsp;at Noon every Tuesday and Friday</div>
    </div>
    <meta itemprop="startDate" content="2018-07-31T12:00:00-07:00">
    <meta itemprop="endDate" content="2018-07-31T13:00:00-07:00">
    <div itemprop="location" itemscope="itemscope" itemtype="http://schema.org/Place">
        <meta itemprop="name" content="Amundson Center">
        <meta itemprop="hasMap" content="http://maps.google.com/?q=200+Spring+Street%2C+Cambridge%2C+WI+53523">
        <div itemprop="address" itemscope="itemscope" itemtype="http://schema.org/PostalAddress">
            <meta itemprop="streetAddress" content="200 Spring Steet">
            <meta itemprop="addressLocality" content="Cambridge">
            <meta itemprop="addressRegion" content="WI">
            <meta itemprop="postalCode" content="53523">
        </div>
    </div>
</div>

<div itemscope="" itemtype="http://schema.org/Event">
    <div>
        <div>
            <a href="https://cambridgewi.com/events-calendar/?event_rdate=20180731170000%2C20180731190000" itemprop="url"><span itemprop="name">Begin to Knit Classes</span></a>
            <div><span>Jul 31, 2018</span>&nbsp;<span>5:00pm</span></div>

        </div>
        <div itemprop="description">Learn to knit at Kaleidoscope Fibers - Cambridge's speciality yarn,...</div>
    </div>
    <meta itemprop="startDate" content="2018-07-31T17:00:00-07:00">
    <meta itemprop="endDate" content="2018-07-31T19:00:00-07:00">
    <div itemprop="location" itemscope="itemscope" itemtype="http://schema.org/Place">
        <meta itemprop="name" content="Kaleidoscope Fibers (131 W. Main Street">
        <div itemprop="address" itemscope="itemscope" itemtype="http://schema.org/PostalAddress">
            <meta itemprop="streetAddress" content="">
        </div>
    </div>
</div>

<div itemscope="" itemtype="http://schema.org/Event">
    <div>
        <div>
            <a href="https://cambridgewi.com/events-calendar/?event_rdate=20180801123000%2C20180801150000" itemprop="url"><span itemprop="name">Cambridge Historic School Museum Tour</span></a>
            <div><span>Aug 1, 2018</span>&nbsp;<span>12:30pm</span></div>
        </div>
        <div itemprop="description">Built in 1906, the Cambridge Historic School -&nbsp;listed on the...</div>
    </div>
    <div class="rhc-clear"></div>
    <meta itemprop="startDate" content="2018-08-01T12:30:00-07:00">
    <meta itemprop="endDate" content="2018-08-01T15:00:00-07:00">
    <div itemprop="location" itemscope="itemscope" itemtype="http://schema.org/Place">
        <meta itemprop="name" content="Cambridge Historic School">
        <div itemprop="address" itemscope="itemscope" itemtype="http://schema.org/PostalAddress">
            <meta itemprop="streetAddress" content="">
        </div>
    </div>
</div>

<div itemscope="" itemtype="http://schema.org/Event">
    <div>
        <div>
            <a href="https://cambridgewi.com/events-calendar/?event_rdate=20180801130000%2C20180801150000" itemprop="url"><span itemprop="name">Begin to Knit Classes</span></a>
            <div><span>Aug 1, 2018</span>&nbsp;<span>1:00pm</span></div>
        </div>
        <div itemprop="description">Learn to knit at Kaleidoscope Fibers - Cambridge's speciality yarn,...</div>
    </div>
    <meta itemprop="startDate" content="2018-08-01T13:00:00-07:00">
    <meta itemprop="endDate" content="2018-08-01T15:00:00-07:00">
    <div itemprop="location" itemscope="itemscope" itemtype="http://schema.org/Place">
        <meta itemprop="name" content="Kaleidoscope Fibers (131 W. Main Street">
        <div itemprop="address" itemscope="itemscope" itemtype="http://schema.org/PostalAddress">
            <meta itemprop="streetAddress" content="">
        </div>
    </div>
</div>

</body>
</html>