def add_static_route(self, gateway, destination, network=None):
        """
        Add a static route to this route table. Destination can be any element
        type supported in the routing table such as a Group of network members.
        Since a static route gateway needs to be on the same network as the
        interface, provide a value for `network` if an interface has multiple
        addresses on different networks.
        ::

            >>> engine = Engine('ve-1')
            >>> itf = engine.routing.get(0)
            >>> itf.add_static_route(
                    gateway=Router('tmprouter'),
                    destination=[Group('routegroup')])
        
        :param Element gateway: gateway for this route (Router, Host)
        :param Element destination: destination network/s for this route.
        :type destination: list(Host, Router, ..)
        :raises ModificationAborted: Change must be made at the interface level
        :raises UpdateElementFailed: failure to update routing table
        :return: Status of whether the route table was updated
        :rtype: bool
        """
        routing_node_gateway = RoutingNodeGateway(gateway,
            destinations=destination)     
        return self._add_gateway_node('router', routing_node_gateway, network)