//TODO:revisar que funcione
	public static void enumerateKeysAndObjectsUsingBlock(this NSDictionary dictionary, enumerateKeysAndObjectsAction action){
		bool stop = false;
		for (nuint i = 0 ; i < dictionary.Count; i++) {
			//id key, id obj, BOOL *stop
			NSObject key = dictionary.Keys[i];
			NSObject obj = dictionary.Values[i];
			action (key,obj,out stop);
			if (stop == true) {
				break;
			}
		}	 	
	}
    //TODO:revisar que funcione
    public static void enumerateKeysAndObjectsUsingBlock(this NSDictionary dictionary, enumerateKeysAndObjectsAction action)
    {
        bool stop = false;

        for (nuint i = 0; i < dictionary.Count; i++)
        {
            //id key, id obj, BOOL *stop
            NSObject key = dictionary.Keys[i];
            NSObject obj = dictionary.Values[i];
            action(key, obj, out stop);
            if (stop == true)
            {
                break;
            }
        }
    }