LOCAL_C void ReadL(RFs& aFs, RArray<TInt>& aArray)
    {
    TInt drive = -1;
    TFileName name(KMapFileName);
    for(TInt i = 'z'; drive < 0 && i >= 'a'; i--)
        {
        name[0] = (TUint16)i;
        if(BaflUtils::FileExists(aFs, name))
            drive = i;
        }
    if(drive < 0)
        return;
    CLineReader* reader = CLineReader::NewLC(aFs, name);
    while(reader->NextL())
        {
        TPtrC ln = reader->Current();
        TLex line(ln);
        TInt n = 0;
        for(;;)
            {
            const TPtrC token = line.NextToken();
            if(token.Length() == 0)
                break;
            if((n & 1) != 0)
                {
                TInt value;
                TLex lex(token);
                User::LeaveIfError(lex.Val(value));
                User::LeaveIfError(aArray.Append(value));
                }
            n++;
            }
        }
    CleanupStack::PopAndDestroy();
    }