<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_available_networks(self, **kwargs):
 """ Retrieves the list of Ethernet networks, Fiber Channel networks, and network sets that are available to a server profile, along with their respective ports. Args: enclosureGroupUri (str):
 The URI of the enclosure group associated with the resource. functionType (str):
 The FunctionType (Ethernet or FibreChannel) to filter the list of networks returned. serverHardwareTypeUri (str):
 The URI of the server hardware type associated with the resource. serverHardwareUri (str):
 The URI of the server hardware associated with the resource. view (str):
 Returns a specific subset of the attributes of the resource or collection, by specifying the name of a predefined view. The default view is expand (show all attributes of the resource and all elements of collections of resources). Values: Ethernet Specifies that the connection is to an Ethernet network or a network set. FibreChannel Specifies that the connection is to a Fibre Channel network. profileUri (str):
 If the URI of the server profile is provided the list of available networks will include only networks that share a scope with the server profile. scopeUris (str):
 An expression to restrict the resources returned according to the scopes to which they are assigned Returns: list: Available networks. """

        uri = self._helper.build_uri_with_query_string(kwargs, '/available-networks')
        return self._helper.do_get(uri)