def prepareMAPlot(zipHandle, plotName, plotFolder, filterNoLimit=False):
    vsPlotPath = os.path.join(plotFolder, plotName)

    if not os.path.exists(vsPlotPath):
        os.mkdir(vsPlotPath)

    metadata = map(
        lambda x: Metadata.fromFile(x, zipHandle),
        filter(lambda x: x.endswith(".vsmeta"), zipHandle.namelist()))
    failedData = filter(lambda x: x.packetsSent == 0, metadata)
    for failed in failedData:
        print "Failed to send one packet for: " + failed.simName
    metadata = filter(lambda x: x.packetsSent != 0, metadata)

    if filterNoLimit:
        metadata = filter(
            lambda x: x.bandwidth != "0.00Mbps" and x.bandwidth != "0Mbps",
            metadata)

    return vsPlotPath, metadata