import UIKit

protocol MMenuItemProtocol
{
    var icon:UIImage { get }
    var order:MMenu.Order { get }
    
    init(order:MMenu.Order)
    
    func controller(session:MSession) -> UIViewController
}

import UIKit

protocol MMenuItemProtocol
{
    associatedtype V:ViewMain
    associatedtype M:Model<Self.V>
    associatedtype C:Controller<Self.V, Self.M>
    
    var icon:UIImage { get }
    var order:MMenu.Order { get }
    var controller:C.Type { get }
    
    init(order:MMenu.Order)
}

Add associated types to protocol
Add associated types to protocol
