function result = runBR(X,Label,train_sq,test_sq,address,C)
%BR
%address = 'E:\Project_Codes\MultiLabel\ExperimentalResult\RESULT_BR_SCENCE'
prob.num_label = size(Label,2);
prob.Dim = size(X,2);%size(X,2)
for i=1:5
%     param.lambda = 0.0000001;
    % Calling the main function LEAD
    prob.X = X(train_sq{i},1:prob.Dim);
    prob.y = Label(train_sq{i},:);
    prob.X_te = X(test_sq{i},1:prob.Dim);
    prob.y_te = Label(test_sq{i},:);
    prob.num_inst = size(prob.X,1);
    prob.num_inst_te = size(prob.X_te,1);
    Pre_Labels = [];
for j = 1:size(prob.y,2)
   yyy = prob.y(:,j);
   yyy = 2*prob.y(:,j)-1;
   model = train(yyy, sparse(prob.X),['-s 3 -B 0 -c ' num2str(C)]); % -w1 100 -w-1 1
   y_te = 2*prob.y_te(:,j)-1;
   [predicted_label, accuracy, dec] = predict(y_te, sparse(prob.X_te), model); 
   predicted_label(predicted_label>0) = 1;
   predicted_label(predicted_label<=0) = 0;
   Pre_Labels = [Pre_Labels  predicted_label];
end
[HammingLoss, Macro_F1, Micro_F1, Macro_Precision, Micro_Precision,  Macro_Recall, Micro_Recall, F_all, Precision_all, Recall_all] = compute_measures(double(Pre_Labels), double(Label(test_sq{i},:)));
% mAP = EvalAP(double(Pre_Labels), double(Label(test_sq{i},:)));
result.HammingLoss(i) = HammingLoss
result.Macro_F1(i) = Macro_F1;
result.Micro_F1(i) = Micro_F1;
result.Precision_all(i) = (Precision_all);
result.Recall_all(i) = Recall_all;
% result.mAP(i) = mAP;
end
result.mean_HammingLoss = mean(result.HammingLoss);
result.mean_Macro_F1 = mean(result.Macro_F1);
result.mean_Micro_F1 = mean(result.Micro_F1);
result.mean_Precision_all = mean(result.Precision_all);
result.mean_Recall_all = mean(result.Recall_all);
% result.mean_mAP(i) = mean(result.mAP);


result.std_HammingLoss = std(result.HammingLoss);
result.std_Macro_F1 = std(result.Macro_F1);
result.std_Micro_F1 = std(result.Micro_F1);
result.std_Precision_all = std(result.Precision_all);
result.std_Recall_all = std(result.Recall_all);
% result.std_mAP(i) = std(result.mAP);
save(address,'result');