function _getFashionParam(uint256 _seed) internal view returns(uint16[13] attrs) {
        uint256 curSeed = _seed;
        
        uint256 rdm = curSeed % 10000;
        uint16 qtyParam;
        if (rdm < 6900) {
            attrs[1] = 1;
            qtyParam = 0;
        } else if (rdm < 8700) {
            attrs[1] = 2;
            qtyParam = 1;
        } else if (rdm < 9600) {
            attrs[1] = 3;
            qtyParam = 2;
        } else if (rdm < 9900) {
            attrs[1] = 4;
            qtyParam = 4;
        } else {
            attrs[1] = 5;
            qtyParam = 7;
        }

        
        curSeed /= 10000;
        rdm = ((curSeed % 10000) / (9999 / maxProtoId)) + 1;
        attrs[0] = uint16(rdm <= maxProtoId ? rdm : maxProtoId);

        
        curSeed /= 10000;
        uint256 tmpVal = protoIdToCount[attrs[0]];
        if (tmpVal == 0) {
            tmpVal = 8;
        }
        rdm = ((curSeed % 10000) / (9999 / tmpVal)) + 1;
        uint16 pos = uint16(rdm <= tmpVal ? rdm : tmpVal);
        attrs[2] = pos;

        rdm = attrs[0] % 3;

        curSeed /= 10000;
        tmpVal = (curSeed % 10000) % 21 + 90;

        if (rdm == 0) {
            if (pos == 1) {
                attrs[3] = uint16((20 + qtyParam * 20) * tmpVal / 100);              
            } else if (pos == 2) {
                attrs[4] = uint16((100 + qtyParam * 100) * tmpVal / 100);            
            } else if (pos == 3) {
                attrs[5] = uint16((15 + qtyParam * 15) * tmpVal / 100);              
            } else if (pos == 4) {
                attrs[6] = uint16((500 + qtyParam * 500) * tmpVal / 100);            
            } else if (pos == 5) {
                attrs[7] = uint16((4 + qtyParam * 4) * tmpVal / 100);                
            } else if (pos == 6) {
                attrs[8] = uint16((5 + qtyParam * 5) * tmpVal / 100);                
            } else if (pos == 7) {
                attrs[9] = uint16((5 + qtyParam * 5) * tmpVal / 100);                
            } else {
                attrs[10] = uint16((4 + qtyParam * 4) * tmpVal / 100);               
            } 
        } else if (rdm == 1) {
            if (pos == 1) {
                attrs[3] = uint16((19 + qtyParam * 19) * tmpVal / 100);              
            } else if (pos == 2) {
                attrs[4] = uint16((90 + qtyParam * 90) * tmpVal / 100);            
            } else if (pos == 3) {
                attrs[5] = uint16((14 + qtyParam * 14) * tmpVal / 100);              
            } else if (pos == 4) {
                attrs[6] = uint16((450 + qtyParam * 450) * tmpVal / 100);            
            } else if (pos == 5) {
                attrs[7] = uint16((3 + qtyParam * 3) * tmpVal / 100);                
            } else if (pos == 6) {
                attrs[8] = uint16((4 + qtyParam * 4) * tmpVal / 100);                
            } else if (pos == 7) {
                attrs[9] = uint16((4 + qtyParam * 4) * tmpVal / 100);                
            } else {
                attrs[10] = uint16((3 + qtyParam * 3) * tmpVal / 100);               
            } 
        } else {
            if (pos == 1) {
                attrs[3] = uint16((21 + qtyParam * 21) * tmpVal / 100);              
            } else if (pos == 2) {
                attrs[4] = uint16((110 + qtyParam * 110) * tmpVal / 100);            
            } else if (pos == 3) {
                attrs[5] = uint16((16 + qtyParam * 16) * tmpVal / 100);              
            } else if (pos == 4) {
                attrs[6] = uint16((550 + qtyParam * 550) * tmpVal / 100);            
            } else if (pos == 5) {
                attrs[7] = uint16((5 + qtyParam * 5) * tmpVal / 100);                
            } else if (pos == 6) {
                attrs[8] = uint16((6 + qtyParam * 6) * tmpVal / 100);                
            } else if (pos == 7) {
                attrs[9] = uint16((6 + qtyParam * 6) * tmpVal / 100);                
            } else {
                attrs[10] = uint16((5 + qtyParam * 5) * tmpVal / 100);               
            } 
        }
        attrs[11] = 0;
        attrs[12] = 0;
    }