<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def determineMaxWindowSize(dtype, limit=None):
 	""" 	Determines the largest square window size that can be used, based on 	the specified datatype and amount of currently available system memory. 	 	If `limit` is specified, then this value will be returned in the event 	that it is smaller than the maximum computed size. 	"""

	vmem = psutil.virtual_memory()
	maxSize = math.floor(math.sqrt(vmem.available / np.dtype(dtype).itemsize))
	if limit is None or limit >= maxSize:
		return maxSize
	else:
		return limit