function [q] = D35WQ8_quantizer(dct, QF)
    
    % Fixed block size
    % W = H = 8
    % C = 3
    lumi_table = QF * [  16 11 10 16 24 40 51 61; ...
                12 12 14 19 26 58 60 55; ...
                14 13 16 24 40 57 69 56; ...
                14 17 22 29 51 87 80 62; ...
                18 22 37 56 68 109 103 77; ...
                24 35 55 64 81 104 113 92; ...
                49 64 78 87 103 121 120 101; ...
                72 92 95 98 112 100 103 99];
            
    chromi_table = QF * [17 18 24 47 99 99 99 99; ...
                    18 21 26 66 99 99 99 99; ...
                    24 26 56 99 99 99 99 99; ...
                    47 66 99 99 99 99 99 99; ...
                    99 99 99 99 99 99 99 99; ...
                    99 99 99 99 99 99 99 99; ...
                    99 99 99 99 99 99 99 99; ...
                    99 99 99 99 99 99 99 99];
                
    lumi_table = reshape(lumi_table, 1, 8, 8);
    chromi_table = reshape(chromi_table, 1, 8, 8, 1);
    q = zeros(size(dct));
    q(:, :, :, 1) = bsxfun(@rdivide, dct(:, :, :, 1), lumi_table);
    q(:, :, :, 2:3) = bsxfun(@rdivide, dct(:, :, :, 2:3), chromi_table);
   
    q = round(q);
    
end