class AngleUnitsProvider extends AbstractUnitsProvider<Coordinates> {

    @Override
    public Class<? extends Coordinates> getUnitsWithLongLabel(String label)
    {
        Lock lock = getLock();
        lock.lock();
        try
        {
            for (Class<? extends Coordinates> type : getAvailableUnitsUnsync())
            {
                try
                {
                    if (Coordinates.getLongLabel(type).equalsIgnoreCase(label) || Coordinates.getLongLabel(type).equalsIgnoreCase(label))
                    {
                        return type;
                    }
                }
                catch (InvalidUnitsException e)
                {
                    throw new ImpossibleException(e);
                }
            }
            return null;
        }
        finally
        {
            lock.unlock();
        }
    }

    public  AngleUnitsProvider();

}