function accountNoneFrozenAvailable(address target) public returns (uint256)  {
        
        uint256[][] memory lockedTimeAndValue=frozeTimeValue[target];

        uint256 avail=0;
       
        if(lockedTimeAndValue.length>0)
        {
           uint256 unlockedTotal=0;
           uint256 now1 = block.timestamp;
           uint256 lockedTotal=0;           
           for(uint i=0;i<lockedTimeAndValue.length;i++)
           {
               
               uint256 unlockTime = lockedTimeAndValue[i][0];
               uint256 unlockvalue=lockedTimeAndValue[i][1];
               
               if(now1>=unlockTime && unlockvalue>0)
               {
                  unlockedTotal=unlockedTotal.add(unlockvalue);
               }
               if(unlockvalue>0)
               {
                   lockedTotal=lockedTotal.add(unlockvalue);
               }
           }
           

           if(lockedTotal > unlockedTotal)
           {
               balancefrozenTime[target]=lockedTotal.sub(unlockedTotal);
           }
           else 
           {
               balancefrozenTime[target]=0;
           }
           
           if(balancefrozenTime[target]==0)
           {
              delete frozeTimeValue[target];
           }
           if(balanceOf[target]>balancefrozenTime[target])
           {
               avail=balanceOf[target].sub(balancefrozenTime[target]);
           }
           else
           {
               avail=0;
           }
           
        }
        else
        {
            avail=balanceOf[target];
        }

        return avail ;
    }