text:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <ProjectGuid>{6B7EE7B0-BF1A-4049-A42F-DD08B199049A}</ProjectGuid>
        <ProjectVersion>16.0</ProjectVersion>
        <FrameworkType>None</FrameworkType>
        <MainSource>ImportsDelayed.dpr</MainSource>
        <Base>True</Base>
        <Config Condition="'$(Config)'==''">Debug</Config>
        <Platform Condition="'$(Platform)'==''">Win32</Platform>
        <TargetedPlatforms>1</TargetedPlatforms>
        <AppType>Console</AppType>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='OSX32' and '$(Base)'=='true') or '$(Base_OSX32)'!=''">
        <Base_OSX32>true</Base_OSX32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
        <Base_Win32>true</Base_Win32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
        <Base_Win64>true</Base_Win64>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
        <Cfg_1>true</Cfg_1>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
        <Cfg_1_Win32>true</Cfg_1_Win32>
        <CfgParent>Cfg_1</CfgParent>
        <Cfg_1>true</Cfg_1>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''">
        <Cfg_2>true</Cfg_2>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base)'!=''">
        <SanitizedProjectName>ImportsDelayed</SanitizedProjectName>
        <DCC_UnitSearchPath>..\..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
        <VerInfo_Locale>1033</VerInfo_Locale>
        <Manifest_File>None</Manifest_File>
        <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
        <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
        <DCC_ExeOutput>..\..\bin\Examples</DCC_ExeOutput>
        <DCC_E>false</DCC_E>
        <DCC_N>false</DCC_N>
        <DCC_S>false</DCC_S>
        <DCC_F>false</DCC_F>
        <DCC_K>false</DCC_K>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_OSX32)'!=''">
        <DCC_UsePackage>bindcompfmx;DBXSqliteDriver;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;bindcomp;inetdb;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapServer;DataSnapProviderClient;xmlrtl;DbxCommonDriver;IndyProtocols;dbxcds;DBXMySQLDriver;bindengine;soaprtl;bindcompdbx;DBXOracleDriver;CustomIPTransport;dsnap;IndyIPServer;DBXInformixDriver;fmxase;IndyCore;IndyIPCommon;DBXFirebirdDriver;inet;fmxobj;inetdbxpress;DBXSybaseASADriver;fmxdae;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win32)'!=''">
        <VerInfo_Locale>1033</VerInfo_Locale>
        <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
        <DCC_UsePackage>fs17;frx17;bindcompfmx;DBXSqliteDriver;vcldbx;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;TeeDB;bindcomp;inetdb;vclib;inetdbbde;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DBXOdbcDriver;DataSnapServer;Tee;DataSnapProviderClient;xmlrtl;svnui;ibxpress;DbxCommonDriver;DBXSybaseASEDriver;vclimg;IndyProtocols;dbxcds;DBXMySQLDriver;DatasnapConnectorsFreePascal;MetropolisUILiveTile;vclactnband;bindengine;vcldb;soaprtl;bindcompdbx;vcldsnap;bindcompvcl;FMXTee;TeeUI;vclie;vcltouch;DBXDb2Driver;websnap;DBXOracleDriver;CustomIPTransport;vclribbon;VclSmp;dsnap;IndyIPServer;DBXInformixDriver;Intraweb;fmxase;vcl;IndyCore;DataSnapConnectors;IndyIPCommon;CloudService;DBXMSSQLDriver;dsnapcon;DBXFirebirdDriver;FmxTeeUI;inet;fsDB17;fmxobj;frxDB17;CodeSiteExpressPkg;vclx;frxe17;inetdbxpress;webdsnap;svn;DBXSybaseASADriver;fmxdae;bdertl;dbexpress;adortl;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win64)'!=''">
        <DCC_UsePackage>bindcompfmx;DBXSqliteDriver;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;bindcomp;inetdb;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DBXOdbcDriver;DataSnapServer;DataSnapProviderClient;xmlrtl;DbxCommonDriver;DBXSybaseASEDriver;vclimg;IndyProtocols;dbxcds;DBXMySQLDriver;vclactnband;bindengine;vcldb;soaprtl;bindcompdbx;vcldsnap;bindcompvcl;vclie;vcltouch;DBXDb2Driver;websnap;DBXOracleDriver;CustomIPTransport;VclSmp;dsnap;IndyIPServer;DBXInformixDriver;fmxase;vcl;IndyCore;IndyIPCommon;DBXMSSQLDriver;dsnapcon;DBXFirebirdDriver;inet;fmxobj;vclx;inetdbxpress;webdsnap;DBXSybaseASADriver;fmxdae;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1)'!=''">
        <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
        <DCC_DebugDCUs>true</DCC_DebugDCUs>
        <DCC_Optimize>false</DCC_Optimize>
        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
        <DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
        <DCC_RemoteDebug>true</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
        <DCC_RemoteDebug>false</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_2)'!=''">
        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
        <DCC_DebugInformation>0</DCC_DebugInformation>
    </PropertyGroup>
    <ItemGroup>
        <DelphiCompile Include="$(MainSource)">
            <MainSource>MainSource</MainSource>
        </DelphiCompile>
        <BuildConfiguration Include="Release">
            <Key>Cfg_2</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
        <BuildConfiguration Include="Base">
            <Key>Base</Key>
        </BuildConfiguration>
        <BuildConfiguration Include="Debug">
            <Key>Cfg_1</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
    </ItemGroup>
    <ProjectExtensions>
        <Borland.Personality>Delphi.Personality.12</Borland.Personality>
        <Borland.ProjectType/>
        <BorlandProject>
            <Delphi.Personality>
                <VersionInfo>
                    <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
                    <VersionInfo Name="AutoIncBuild">False</VersionInfo>
                    <VersionInfo Name="MajorVer">1</VersionInfo>
                    <VersionInfo Name="MinorVer">0</VersionInfo>
                    <VersionInfo Name="Release">0</VersionInfo>
                    <VersionInfo Name="Build">0</VersionInfo>
                    <VersionInfo Name="Debug">False</VersionInfo>
                    <VersionInfo Name="PreRelease">False</VersionInfo>
                    <VersionInfo Name="Special">False</VersionInfo>
                    <VersionInfo Name="Private">False</VersionInfo>
                    <VersionInfo Name="DLL">False</VersionInfo>
                    <VersionInfo Name="Locale">1033</VersionInfo>
                    <VersionInfo Name="CodePage">1252</VersionInfo>
                </VersionInfo>
                <VersionInfoKeys>
                    <VersionInfoKeys Name="CompanyName"/>
                    <VersionInfoKeys Name="FileDescription"/>
                    <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
                    <VersionInfoKeys Name="InternalName"/>
                    <VersionInfoKeys Name="LegalCopyright"/>
                    <VersionInfoKeys Name="LegalTrademarks"/>
                    <VersionInfoKeys Name="OriginalFilename"/>
                    <VersionInfoKeys Name="ProductName"/>
                    <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
                    <VersionInfoKeys Name="Comments"/>
                    <VersionInfoKeys Name="CFBundleName"/>
                    <VersionInfoKeys Name="CFBundleDisplayName"/>
                    <VersionInfoKeys Name="CFBundleIdentifier"/>
                    <VersionInfoKeys Name="CFBundleVersion"/>
                    <VersionInfoKeys Name="CFBundlePackageType"/>
                    <VersionInfoKeys Name="CFBundleSignature"/>
                    <VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
                    <VersionInfoKeys Name="CFBundleExecutable"/>
                </VersionInfoKeys>
                <Source>
                    <Source Name="MainSource">ImportsDelayed.dpr</Source>
                </Source>
                <Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dcloffice2k200.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dclofficexp200.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
                </Excluded_Packages>
            </Delphi.Personality>
            <Deployment/>
            <Platforms>
                <Platform value="OSX32">False</Platform>
                <Platform value="Win32">True</Platform>
                <Platform value="Win64">False</Platform>
            </Platforms>
        </BorlandProject>
        <ProjectFileVersion>12</ProjectFileVersion>
    </ProjectExtensions>
    <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
    <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
</Project>


text:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <ProjectGuid>{4CE9E686-7C1A-4596-8181-0E4C74519A07}</ProjectGuid>
        <ProjectVersion>16.0</ProjectVersion>
        <FrameworkType>None</FrameworkType>
        <MainSource>ImportsEnumeration.dpr</MainSource>
        <Base>True</Base>
        <Config Condition="'$(Config)'==''">Debug</Config>
        <Platform Condition="'$(Platform)'==''">Win32</Platform>
        <TargetedPlatforms>1</TargetedPlatforms>
        <AppType>Console</AppType>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='OSX32' and '$(Base)'=='true') or '$(Base_OSX32)'!=''">
        <Base_OSX32>true</Base_OSX32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
        <Base_Win32>true</Base_Win32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
        <Base_Win64>true</Base_Win64>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
        <Cfg_1>true</Cfg_1>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
        <Cfg_1_Win32>true</Cfg_1_Win32>
        <CfgParent>Cfg_1</CfgParent>
        <Cfg_1>true</Cfg_1>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''">
        <Cfg_2>true</Cfg_2>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base)'!=''">
        <SanitizedProjectName>ImportsEnumeration</SanitizedProjectName>
        <DCC_UnitSearchPath>..\..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
        <VerInfo_Locale>1033</VerInfo_Locale>
        <Manifest_File>None</Manifest_File>
        <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
        <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
        <DCC_ExeOutput>..\..\bin\Examples</DCC_ExeOutput>
        <DCC_E>false</DCC_E>
        <DCC_N>false</DCC_N>
        <DCC_S>false</DCC_S>
        <DCC_F>false</DCC_F>
        <DCC_K>false</DCC_K>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_OSX32)'!=''">
        <DCC_UsePackage>bindcompfmx;DBXSqliteDriver;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;bindcomp;inetdb;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapServer;DataSnapProviderClient;xmlrtl;DbxCommonDriver;IndyProtocols;dbxcds;DBXMySQLDriver;bindengine;soaprtl;bindcompdbx;DBXOracleDriver;CustomIPTransport;dsnap;IndyIPServer;DBXInformixDriver;fmxase;IndyCore;IndyIPCommon;DBXFirebirdDriver;inet;fmxobj;inetdbxpress;DBXSybaseASADriver;fmxdae;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win32)'!=''">
        <VerInfo_Locale>1033</VerInfo_Locale>
        <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
        <DCC_UsePackage>fs17;frx17;bindcompfmx;DBXSqliteDriver;vcldbx;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;TeeDB;bindcomp;inetdb;vclib;inetdbbde;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DBXOdbcDriver;DataSnapServer;Tee;DataSnapProviderClient;xmlrtl;svnui;ibxpress;DbxCommonDriver;DBXSybaseASEDriver;vclimg;IndyProtocols;dbxcds;DBXMySQLDriver;DatasnapConnectorsFreePascal;MetropolisUILiveTile;vclactnband;bindengine;vcldb;soaprtl;bindcompdbx;vcldsnap;bindcompvcl;FMXTee;TeeUI;vclie;vcltouch;DBXDb2Driver;websnap;DBXOracleDriver;CustomIPTransport;vclribbon;VclSmp;dsnap;IndyIPServer;DBXInformixDriver;Intraweb;fmxase;vcl;IndyCore;DataSnapConnectors;IndyIPCommon;CloudService;DBXMSSQLDriver;dsnapcon;DBXFirebirdDriver;FmxTeeUI;inet;fsDB17;fmxobj;frxDB17;CodeSiteExpressPkg;vclx;frxe17;inetdbxpress;webdsnap;svn;DBXSybaseASADriver;fmxdae;bdertl;dbexpress;adortl;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win64)'!=''">
        <DCC_UsePackage>bindcompfmx;DBXSqliteDriver;fmx;rtl;dbrtl;DbxClientDriver;IndySystem;bindcomp;inetdb;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DBXOdbcDriver;DataSnapServer;DataSnapProviderClient;xmlrtl;DbxCommonDriver;DBXSybaseASEDriver;vclimg;IndyProtocols;dbxcds;DBXMySQLDriver;vclactnband;bindengine;vcldb;soaprtl;bindcompdbx;vcldsnap;bindcompvcl;vclie;vcltouch;DBXDb2Driver;websnap;DBXOracleDriver;CustomIPTransport;VclSmp;dsnap;IndyIPServer;DBXInformixDriver;fmxase;vcl;IndyCore;IndyIPCommon;DBXMSSQLDriver;dsnapcon;DBXFirebirdDriver;inet;fmxobj;vclx;inetdbxpress;webdsnap;DBXSybaseASADriver;fmxdae;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1)'!=''">
        <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
        <DCC_DebugDCUs>true</DCC_DebugDCUs>
        <DCC_Optimize>false</DCC_Optimize>
        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
        <DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
        <DCC_RemoteDebug>true</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
        <DCC_RemoteDebug>false</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_2)'!=''">
        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
        <DCC_DebugInformation>0</DCC_DebugInformation>
    </PropertyGroup>
    <ItemGroup>
        <DelphiCompile Include="$(MainSource)">
            <MainSource>MainSource</MainSource>
        </DelphiCompile>
        <BuildConfiguration Include="Release">
            <Key>Cfg_2</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
        <BuildConfiguration Include="Base">
            <Key>Base</Key>
        </BuildConfiguration>
        <BuildConfiguration Include="Debug">
            <Key>Cfg_1</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
    </ItemGroup>
    <ProjectExtensions>
        <Borland.Personality>Delphi.Personality.12</Borland.Personality>
        <Borland.ProjectType/>
        <BorlandProject>
            <Delphi.Personality>
                <VersionInfo>
                    <VersionInfo Name="IncludeVerInfo">False</VersionInfo>
                    <VersionInfo Name="AutoIncBuild">False</VersionInfo>
                    <VersionInfo Name="MajorVer">1</VersionInfo>
                    <VersionInfo Name="MinorVer">0</VersionInfo>
                    <VersionInfo Name="Release">0</VersionInfo>
                    <VersionInfo Name="Build">0</VersionInfo>
                    <VersionInfo Name="Debug">False</VersionInfo>
                    <VersionInfo Name="PreRelease">False</VersionInfo>
                    <VersionInfo Name="Special">False</VersionInfo>
                    <VersionInfo Name="Private">False</VersionInfo>
                    <VersionInfo Name="DLL">False</VersionInfo>
                    <VersionInfo Name="Locale">1033</VersionInfo>
                    <VersionInfo Name="CodePage">1252</VersionInfo>
                </VersionInfo>
                <VersionInfoKeys>
                    <VersionInfoKeys Name="CompanyName"/>
                    <VersionInfoKeys Name="FileDescription"/>
                    <VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys>
                    <VersionInfoKeys Name="InternalName"/>
                    <VersionInfoKeys Name="LegalCopyright"/>
                    <VersionInfoKeys Name="LegalTrademarks"/>
                    <VersionInfoKeys Name="OriginalFilename"/>
                    <VersionInfoKeys Name="ProductName"/>
                    <VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys>
                    <VersionInfoKeys Name="Comments"/>
                    <VersionInfoKeys Name="CFBundleName"/>
                    <VersionInfoKeys Name="CFBundleDisplayName"/>
                    <VersionInfoKeys Name="CFBundleIdentifier"/>
                    <VersionInfoKeys Name="CFBundleVersion"/>
                    <VersionInfoKeys Name="CFBundlePackageType"/>
                    <VersionInfoKeys Name="CFBundleSignature"/>
                    <VersionInfoKeys Name="CFBundleAllowMixedLocalizations"/>
                    <VersionInfoKeys Name="CFBundleExecutable"/>
                </VersionInfoKeys>
                <Source>
                    <Source Name="MainSource">ImportsEnumeration.dpr</Source>
                </Source>
                <Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dcloffice2k200.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dclofficexp200.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
                </Excluded_Packages>
            </Delphi.Personality>
            <Deployment/>
            <Platforms>
                <Platform value="OSX32">False</Platform>
                <Platform value="Win32">True</Platform>
                <Platform value="Win64">False</Platform>
            </Platforms>
        </BorlandProject>
        <ProjectFileVersion>12</ProjectFileVersion>
    </ProjectExtensions>
    <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
    <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
</Project>

repo_name: vdisasm/pe-image-for-delphi

repo_language: Pascal

mime_type: text/plain


text:
program ImportsAdd;

{$APPTYPE CONSOLE}

uses
  PE.Common,
  PE.Image,
  PE.Imports,
  PE.Imports.Func,
  PE.Build;

var
  img: TPEImage;

begin
  img := TPEImage.Create;
  try
    img.LoadFromFile('SampleLib.dll');

    // Adding dll and func in one line.
    // To add few funcs, lib must be stored to temp. variable.
    img.Imports.NewLib('some.dll').NewFunction('somefunc');

    if ReBuildDirData(img, DDIR_IMPORT, true) <> nil then
      img.SaveToFile('tmp\new_import.dll')
    else
      writeln('Failed to rebuild image');
  finally
    img.Free;
  end;

end.


text:
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <PropertyGroup>
        <ProjectGuid>{771E0363-9DD9-4233-A4E2-5E584B2BE7EF}</ProjectGuid>
        <ProjectVersion>16.0</ProjectVersion>
        <FrameworkType>None</FrameworkType>
        <MainSource>PeidSignatures.dpr</MainSource>
        <Base>True</Base>
        <Config Condition="'$(Config)'==''">Debug</Config>
        <Platform Condition="'$(Platform)'==''">Win32</Platform>
        <TargetedPlatforms>1</TargetedPlatforms>
        <AppType>Console</AppType>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Base' or '$(Base)'!=''">
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Android' and '$(Base)'=='true') or '$(Base_Android)'!=''">
        <Base_Android>true</Base_Android>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='iOSDevice' and '$(Base)'=='true') or '$(Base_iOSDevice)'!=''">
        <Base_iOSDevice>true</Base_iOSDevice>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='iOSSimulator' and '$(Base)'=='true') or '$(Base_iOSSimulator)'!=''">
        <Base_iOSSimulator>true</Base_iOSSimulator>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='OSX32' and '$(Base)'=='true') or '$(Base_OSX32)'!=''">
        <Base_OSX32>true</Base_OSX32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Base)'=='true') or '$(Base_Win32)'!=''">
        <Base_Win32>true</Base_Win32>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win64' and '$(Base)'=='true') or '$(Base_Win64)'!=''">
        <Base_Win64>true</Base_Win64>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Debug' or '$(Cfg_1)'!=''">
        <Cfg_1>true</Cfg_1>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="('$(Platform)'=='Win32' and '$(Cfg_1)'=='true') or '$(Cfg_1_Win32)'!=''">
        <Cfg_1_Win32>true</Cfg_1_Win32>
        <CfgParent>Cfg_1</CfgParent>
        <Cfg_1>true</Cfg_1>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Config)'=='Release' or '$(Cfg_2)'!=''">
        <Cfg_2>true</Cfg_2>
        <CfgParent>Base</CfgParent>
        <Base>true</Base>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base)'!=''">
        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
        <DCC_UnitSearchPath>..\..;$(DCC_UnitSearchPath)</DCC_UnitSearchPath>
        <SanitizedProjectName>PeidSignatures</SanitizedProjectName>
        <Manifest_File>None</Manifest_File>
        <DCC_Namespace>System;Xml;Data;Datasnap;Web;Soap;$(DCC_Namespace)</DCC_Namespace>
        <VerInfo_Locale>1033</VerInfo_Locale>
        <DCC_DcuOutput>.\$(Platform)\$(Config)</DCC_DcuOutput>
        <DCC_ExeOutput>..\..\bin\examples</DCC_ExeOutput>
        <DCC_E>false</DCC_E>
        <DCC_N>false</DCC_N>
        <DCC_S>false</DCC_S>
        <DCC_F>false</DCC_F>
        <DCC_K>false</DCC_K>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Android)'!=''">
        <Android_LauncherIcon144>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_144x144.png</Android_LauncherIcon144>
        <Android_LauncherIcon96>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_96x96.png</Android_LauncherIcon96>
        <DCC_UsePackage>FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;CustomIPTransport;dsnap;IndyIPServer;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;dsnapxml;bindcompfmx;RESTBackendComponents;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;FireDAC;inet;soapmidas;RESTComponents;dbexpress;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
        <Android_LauncherIcon72>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_72x72.png</Android_LauncherIcon72>
        <Android_LauncherIcon48>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_48x48.png</Android_LauncherIcon48>
        <Android_LauncherIcon36>$(BDS)\bin\Artwork\Android\FM_LauncherIcon_36x36.png</Android_LauncherIcon36>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_iOSDevice)'!=''">
        <DCC_UsePackage>FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;CustomIPTransport;dsnap;IndyIPServer;fmxase;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;dsnapxml;bindcompfmx;RESTBackendComponents;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;FireDAC;inet;soapmidas;RESTComponents;dbexpress;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_iOSSimulator)'!=''">
        <DCC_UsePackage>FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;CustomIPTransport;dsnap;IndyIPServer;fmxase;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;dsnapxml;bindcompfmx;RESTBackendComponents;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;FireDAC;inet;soapmidas;RESTComponents;dbexpress;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_OSX32)'!=''">
        <DCC_UsePackage>FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;tethering;DBXInterBaseDriver;DataSnapClient;DataSnapServer;DataSnapCommon;DataSnapProviderClient;DbxCommonDriver;dbxcds;fmxFireDAC;DBXOracleDriver;CustomIPTransport;dsnap;IndyIPServer;fmxase;IndyCore;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACInfxDriver;FireDACDb2Driver;FireDACASADriver;bindcompfmx;FireDACODBCDriver;RESTBackendComponents;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;inetdb;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;bindengine;bindcompdbx;soaprtl;FMXTee;FireDACADSDriver;FireDACMSSQLDriver;FireDAC;DBXInformixDriver;DataSnapServerMidas;DBXFirebirdDriver;inet;fmxobj;FireDACMySQLDriver;soapmidas;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;FireDACMSAccDriver;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
        <DCC_ConsoleTarget>true</DCC_ConsoleTarget>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win32)'!=''">
        <VerInfo_Locale>1033</VerInfo_Locale>
        <DCC_UsePackage>FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;TeeDB;tethering;inetdbbde;vclib;DBXInterBaseDriver;DataSnapClient;DataSnapServer;DataSnapCommon;DataSnapProviderClient;DBXSybaseASEDriver;DbxCommonDriver;vclimg;dbxcds;DatasnapConnectorsFreePascal;MetropolisUILiveTile;vcldb;vcldsnap;fmxFireDAC;DBXDb2Driver;DBXOracleDriver;CustomIPTransport;vclribbon;dsnap;IndyIPServer;fmxase;vcl;IndyCore;DBXMSSQLDriver;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;CodeSiteExpressPkg;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACInfxDriver;FireDACDb2Driver;adortl;FireDACASADriver;bindcompfmx;vcldbx;FireDACODBCDriver;RESTBackendComponents;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;inetdb;Tee;DBXOdbcDriver;vclFireDAC;xmlrtl;DataSnapNativeClient;svnui;ibxpress;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;bindengine;vclactnband;bindcompdbx;soaprtl;FMXTee;TeeUI;bindcompvcl;vclie;FireDACADSDriver;vcltouch;VclSmp;FireDACMSSQLDriver;FireDAC;DBXInformixDriver;Intraweb;VCLRESTComponents;DataSnapConnectors;DataSnapServerMidas;dsnapcon;DBXFirebirdDriver;inet;fmxobj;FireDACMySQLDriver;soapmidas;vclx;svn;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;bdertl;FireDACMSAccDriver;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
        <DCC_ConsoleTarget>true</DCC_ConsoleTarget>
        <DCC_Namespace>Winapi;System.Win;Data.Win;Datasnap.Win;Web.Win;Soap.Win;Xml.Win;Bde;$(DCC_Namespace)</DCC_Namespace>
        <VerInfo_Keys>CompanyName=;FileDescription=;FileVersion=1.0.0.0;InternalName=;LegalCopyright=;LegalTrademarks=;OriginalFilename=;ProductName=;ProductVersion=1.0.0.0;Comments=</VerInfo_Keys>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Base_Win64)'!=''">
        <DCC_UsePackage>FireDACSqliteDriver;FireDACDSDriver;DBXSqliteDriver;FireDACPgDriver;fmx;IndySystem;TeeDB;tethering;vclib;DBXInterBaseDriver;DataSnapClient;DataSnapServer;DataSnapCommon;DataSnapProviderClient;DBXSybaseASEDriver;DbxCommonDriver;vclimg;dbxcds;DatasnapConnectorsFreePascal;MetropolisUILiveTile;vcldb;vcldsnap;fmxFireDAC;DBXDb2Driver;DBXOracleDriver;CustomIPTransport;vclribbon;dsnap;IndyIPServer;fmxase;vcl;IndyCore;DBXMSSQLDriver;IndyIPCommon;CloudService;FmxTeeUI;FireDACIBDriver;DataSnapFireDAC;FireDACDBXDriver;soapserver;inetdbxpress;dsnapxml;FireDACInfxDriver;FireDACDb2Driver;adortl;FireDACASADriver;bindcompfmx;FireDACODBCDriver;RESTBackendComponents;rtl;dbrtl;DbxClientDriver;FireDACCommon;bindcomp;inetdb;Tee;DBXOdbcDriver;vclFireDAC;xmlrtl;DataSnapNativeClient;ibxpress;IndyProtocols;DBXMySQLDriver;FireDACCommonDriver;bindengine;vclactnband;bindcompdbx;soaprtl;FMXTee;TeeUI;bindcompvcl;vclie;FireDACADSDriver;vcltouch;VclSmp;FireDACMSSQLDriver;FireDAC;DBXInformixDriver;Intraweb;VCLRESTComponents;DataSnapConnectors;DataSnapServerMidas;dsnapcon;DBXFirebirdDriver;inet;fmxobj;FireDACMySQLDriver;soapmidas;vclx;DBXSybaseASADriver;FireDACOracleDriver;fmxdae;RESTComponents;FireDACMSAccDriver;dbexpress;DataSnapIndy10ServerTransport;IndyIPClient;$(DCC_UsePackage)</DCC_UsePackage>
        <DCC_ConsoleTarget>true</DCC_ConsoleTarget>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1)'!=''">
        <DCC_Define>DEBUG;$(DCC_Define)</DCC_Define>
        <DCC_DebugDCUs>true</DCC_DebugDCUs>
        <DCC_Optimize>false</DCC_Optimize>
        <DCC_GenerateStackFrames>true</DCC_GenerateStackFrames>
        <DCC_DebugInfoInExe>true</DCC_DebugInfoInExe>
        <DCC_RemoteDebug>true</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_1_Win32)'!=''">
        <VerInfo_Locale>1033</VerInfo_Locale>
        <Manifest_File>None</Manifest_File>
        <DCC_RemoteDebug>false</DCC_RemoteDebug>
    </PropertyGroup>
    <PropertyGroup Condition="'$(Cfg_2)'!=''">
        <DCC_LocalDebugSymbols>false</DCC_LocalDebugSymbols>
        <DCC_Define>RELEASE;$(DCC_Define)</DCC_Define>
        <DCC_SymbolReferenceInfo>0</DCC_SymbolReferenceInfo>
        <DCC_DebugInformation>0</DCC_DebugInformation>
    </PropertyGroup>
    <ItemGroup>
        <DelphiCompile Include="$(MainSource)">
            <MainSource>MainSource</MainSource>
        </DelphiCompile>
        <BuildConfiguration Include="Release">
            <Key>Cfg_2</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
        <BuildConfiguration Include="Base">
            <Key>Base</Key>
        </BuildConfiguration>
        <BuildConfiguration Include="Debug">
            <Key>Cfg_1</Key>
            <CfgParent>Base</CfgParent>
        </BuildConfiguration>
    </ItemGroup>
    <ProjectExtensions>
        <Borland.Personality>Delphi.Personality.12</Borland.Personality>
        <Borland.ProjectType/>
        <BorlandProject>
            <Delphi.Personality>
                <Source>
                    <Source Name="MainSource">PeidSignatures.dpr</Source>
                </Source>
                <Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dcloffice2k200.bpl">Microsoft Office 2000 Sample Automation Server Wrapper Components</Excluded_Packages>
                    <Excluded_Packages Name="$(BDSBIN)\dclofficexp200.bpl">Microsoft Office XP Sample Automation Server Wrapper Components</Excluded_Packages>
                </Excluded_Packages>
            </Delphi.Personality>
            <Deployment/>
            <Platforms>
                <Platform value="Android">False</Platform>
                <Platform value="iOSDevice">False</Platform>
                <Platform value="iOSSimulator">False</Platform>
                <Platform value="OSX32">False</Platform>
                <Platform value="Win32">True</Platform>
                <Platform value="Win64">False</Platform>
            </Platforms>
        </BorlandProject>
        <ProjectFileVersion>12</ProjectFileVersion>
    </ProjectExtensions>
    <Import Project="$(BDS)\Bin\CodeGear.Delphi.Targets" Condition="Exists('$(BDS)\Bin\CodeGear.Delphi.Targets')"/>
    <Import Project="$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj" Condition="Exists('$(APPDATA)\Embarcadero\$(BDSAPPDATABASEDIR)\$(PRODUCTVERSION)\UserTools.proj')"/>
</Project>


text:
program PeidSignatures;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.Classes,
  System.Diagnostics,
  System.SysUtils,

  PE.ID,
  PE.Image;

procedure main;
var
  sig: TPEIDSignatures;
  img: TPEImage;
  FoundSigs: TStringList;
  s: string;
  sw: TStopwatch;
begin
  // Try to load signatures.
  sig := PeidLoadSignatures('UserDB.txt');
  try
    if assigned(sig) then
    begin
      img := TPEImage.Create;
      FoundSigs := TStringList.Create;
      try
        if img.LoadFromFile('SampleLib.dll', []) then
        begin
          sw := TStopwatch.StartNew;
          PeidScan(img, sig, FoundSigs);
          sw.Stop;
          writeln('Elapsed ', string(sw.Elapsed));

          if FoundSigs.Count <> 0 then
          begin
            for s in FoundSigs do
              writeln(s);
          end
          else
          begin
            writeln('Nothing detected');
          end;

        end;
      finally
        img.Free;
        FoundSigs.Free;
      end;
    end;
  finally
    sig.Free;
  end;
end;

begin
  ReportMemoryLeaksOnShutdown := True;
  try
    main;
    readln;
  except
    on E: Exception do
      writeln(E.ClassName, ': ', E.Message);
  end;

end.


text:
# Links

- [worldstadiums.com](http://www.worldstadiums.com) -
  more than 11 000 stadiums in over 224 countries

- [stadiumdb.com](http://stadiumdb.com) -
  database counts 1536 stadiums, 492 stadium designs, 156 stadium constructions,
  80 tournament stadiums, 49 historical stadiums

## Wikipedia

- [List_of_soccer_stadiums_in_Canada](http://en.wikipedia.org/wiki/List_of_soccer_stadiums_in_Canada)

## Wikipedia (de)

- [Liste_der_größten_Stadien_in_Österreich (de)](http://de.wikipedia.org/wiki/Liste_der_größten_Stadien_in_Österreich)
- [Liste_der_größten_Fußballstadien_in_Europa (de)](http://de.wikipedia.org/wiki/Liste_der_größten_Fußballstadien_in_Europa)
- [Liste_der_größten_Fußballstadien_der_Welt (de)](http://de.wikipedia.org/wiki/Liste_der_größten_Fußballstadien_der_Welt)

repo_name: openfootball/stadiums


text:
# Stadiums

Free open public domain football stadium data. Example:

```
Maracanã|Estádio do Maracanã,   76_935,    Rio de Janeiro, RJ
Corinthians|Arena Corinthians|Arena de São Paulo,  68_000,  São Paulo, SP
Nacional de Brasília|Estádio Nacional (Mané Garrincha)|Mané Garrincha,  70_042,  Brasília, DF
...
```

## Questions? Comments?

Send them along to the
[Open Sports & Friends Forum/Mailing List](http://groups.google.com/group/opensport).
Thanks!


text:
Estadio Monumental, 80_093,  Lima
# club: Universitario de Deportes

Estadio Huancayo, 20_000, Huancayo
# club: Real Garcilaso


text:
Estadio Hernando Siles, 45_000,  La Paz
# club: The Strongest, Bolívar


text:
Estadio Luis Franzini, 16_000, Montevideo
# club: Defensor Sporting

Estadio Gran Parque Central, 26_500, Montevideo
# club: Nacional

Estadio Centenario, 65_235, Montevideo
# club: Peñarol


text:
Estadio Santa Laura, 19_000, Santiago de Chile
# club: Unión Española

Estadio Monumental, 46_989, Santiago
# club: O'Higgins

Estadio Nacional de Chile, 48_665, Santiago de Chile
# club: Universidad de Chile


text:
Estadio Agustín Tovar, 29_800, Barinas
# club: Zamora

Estadio José Antonio Anzoátegui, 40_000, Puerto La Cruz
# club: Deportivo Anzoátegui


text:
############
#  note: use $$ for sponsored/commercial name e.g. $Allianz$ Arena, etc.

#######
# RJ

maracana, Estádio Jornalista Mário Filho|Estádio do Maracanã|Maracanã,   76_935,    Rio de Janeiro, RJ
# club: Flamengo

engenhao, Estádio Olímpico Nilton Santos|Engenhão, 44_000, Rio de Janeiro, RJ
# club: Botafogo

saojanuario, Estádio Vasco da Gama|Estádio São Januário|São Januário, 24_584, Rio de Janeiro, RJ
# club: Vasco da Gama

######
# DF

nacionaldebrasilia, Arena $BRB$ Mané Garrincha|Estádio Nacional Mané Garrincha|Mané Garrincha|Nacional de Brasília,  70_042,  Brasília, DF

########
# SP

corinthians, $Neo Química$ Arena|Arena Corinthians|Arena de São Paulo|Itaquerão,  68_000,  São Paulo, SP
# club: Corinthians

palmeiras, $Allianz$ Parque|Arena Palestra Itália|Arena Palmeiras, 43_713, São Paulo, SP
# club: Palmeiras

vilabelmiro, Estádio Urbano Caldeira|Estádio Vila Belmiro|Vila Belmiro,  20_360, Santos, SP
# club: Santos

morumbi, Estádio Cícero Pompeu de Toledo|Estádio do Morumbi,  72_039, São Paulo, SP
# club: São Paulo

pacaembu, Estádio Municipal Paulo Machado de Carvalho|Estádio do Pacaembu|Pacaembu, 37_730, São Paulo, SP
prudentao, Estádio Paulo Constantino|Prudentão, 45_954, Presidente Prudente, SP

##########
# CE

castelao, Estádio Governador Plácido Castelo|Arena Castelão|Castelão,  64_846, Fortaleza, CE

###########
# MG

mineirao, Estádio Governador Magalhães Pinto|Estádio Mineirão|Mineirão, 62_547, Belo Horizonte, MG
# club: Cruzeiro

# arenamrv, Arena $MRV$, 46_000, Belo Horizonte, MG       # under construction, planned on 2023
# club: Atlético Mineiro

independencia, Estadio Independência, 23_018, Belo Horizonte, MG
# club: América

parquedosabia, Estádio Municipal Parque do Sabiá, 53_350, Uberlândia, MG
# club: Uberlândia Esporte Clube

#########
# BA

fontenova, Complexo Esportivo Cultural Octávio Mangabeira|Arena Fonte Nova|Fonte Nova, 56_000, Salvador, BA

##############
# GO

serradourada, Estádio do Governo do Estado de Goiás|Estádio Serra Dourada, 50_049, Goiânia, GO

###########
# MT

pantanal, Arena Pantanal|Pantanal, 42_968,  Cuiabá, MT
# club: Cuiabá

###########
# MS

morenao, Estádio Universitário Pedro Pedrossian|Morenão, 44_200, Campo Grande, MS

############
# AM

amazonia, Arena da Amazônia - Vivaldo Lima|Arena Amazônia|Amazônia,  42_374,  Manaus, AM

###########
# RN

dasdunas, Arena das Dunas|Das Dunas, 42_086,  Natal, RN

##############
# RS

beirario, Estádio Beira-Rio|Beira-Rio, 51_300, Porto Alegre, RS
# club: Internacional

arenadogremio, Arena do Grêmio, 60_540, Porto Alegre, RS
# Club: Grêmio

###########
# PA

mangueirao, Estádio Estadual Jornalista Edgar Proença|Estádio Olímpico do Pará|Mangueirão, 53_645, Belém, PA

##############
# PE

pernambuco, Estádio Governador Carlos Wilson Campos|Arena Pernambuco, 44_300,  Recife, PE
arruda, Estádio José do Rego Maciel|Estádio do Arruda|Arruda|Arrudão, 60_044, Recife, PE
# club: Santa Cruz

##############
# PR

dabaixada, Estádio Joaquim Américo Guimarães|Estádio Athletico Paranaense|Arena da Baixada|Da Baixada,  43_981, Curitiba, PR
# club: Athletico Paranaense

estadiodurivaldebrittoesilva, Estádio Durival de Britto e Silva, 20_083, Curitiba, PR
# club: Paraná


text:
Estadio General Pablo Rojas, 32_910, Asunción
# club: Cerro Porteño

Estadio Arsenio Erico, 5_000, Asunción
# club: Nacional


text:
Estadio Rumiñahui, 7_500, Sangolquí
# club: Independiente del Valle

Estadio George Capwell, 24_019, Guayaquil
# club: Emelec


text:
Estadio Monumental Antonio Vespucio Liberti|Monumental de Nuñez|Estadio $Mâs$ Monumental, 72_054, Buenos Aires
# club: River Plate

Estadio Alberto J. Armando|La Bombonera, 59_000, Buenos Aires
# club: Boca Juniors

Estadio José Amalfitani,  49_540, Buenos Aires
# club: Vélez Sarsfield

Estadio Nuevo Gasómetro, 43_995, Buenos Aires
# club: San Lorenzo

Estadio Ciudad de Lanús|Néstor Díaz Pérez, 47_027, Lanús
# club: C.A. Lanús

Estadio Ciudad de La Plata, 53_000, La Plata

Estadio Marcelo Bielsa, 42_000, Rosario
# club: Newell's Old Boys

Estadio Centenario, 25_000, Resistencia
# club: Atlético Sarmiento

Estadio Julio Humberto Grondona, 16_300, Sarandí
# club: Arsenal


text:
Estadio Olímpico Pascual Guerrero, 33_130, Cali
# club: Deportivo Cali

Estadio Nemesio Camacho El Campín, 40_000, Bogotá
# club: Santa Fe

Estadio Atanasio Girardot, 45_943, Medellín
# club: Atlético Nacional


text:
#  ten world cup 2010 venues

Ellis Park Stadium, 55_686, Johannesburg
Soccer City, 84_490, Johannesburg

Cape Town Stadium, 64_100, Cape Town

Moses Mabhida Stadium, 62_760, Durban

Loftus Versfeld Stadium, 42_858, Pretoria

Nelson Mandela Bay Stadium, 42_486,  Port Elizabeth

Peter Mokaba Stadium, 41_733,  Polokwane

Mbombela Stadium, 40_929,  Nelspruit

Free State Stadium,  40_911, Bloemfontein

Royal Bafokeng Stadium, 38_646, Rustenburg


text:
# venues world cup club 2013

Stade de Marrakech, 45_240, Marrakesh
Stade Adrar,        45_480, Agadir


text:
########################
# Stadiums in Canada
#
# note: use $$ for sponsored/commercial name  e.g $Saputo$ Stadium, etc.

#####################
# Quebec

$Saputo$ Stadium,  20_341, 2008, Montreal | Quebec   # Montreal Impact


text:
#########
# see en.wikipedia.org/wiki/2013_CONCACAF_Gold_Cup
# see en.wikipedia.org/wiki/2013_Major_League_Soccer_season
#
# todo: add mls stadiums ???

#
#
# note: use $$ for sponsored/commercial name  e.g $Toyota$ Stadium, $Sports Authority$ Field, etc.

####################
# Californa, CA

Rose Bowl, 92_542, Pasadena, CA   # Pasadena is a city in Los Angeles County - use Los Angeles?

$StubHub$ Center,  27_000,  2003,  Carson, CA      # Chivas USA, Los Angeles Galaxy

#####################
# Washington, WA

$CenturyLink$ Field, 67_000, Seattle, WA

#####################
# Colorado, CO

$Sports Authority$ Field, 76_125, Denver, CO
$Dick's Sporting Goods$ Park, 18_086,  2007,  Commerce City, CO     # Colorado Rapids

################
# New Jersey, NJ

$Red Bull$ Arena,  25_189, 2010, Harrison, NJ     # New York Red Bulls

####################
# Pennsylvania

$PPL$ Park, 18_500,  2010,  Chester // Pennsylvania   # Philadelphia Union

#################
# Georgia, GA

Georgia Dome, 71_228, 1992, 1 Georgia Dome Drive Northwest // Atlanta | GA 30313-1591

##############
#  Maryland

$M&T Bank$ Stadium, 71_008,  Baltimore

##############
# Washington, DC

RFK Memorial Stadium, 19_467,  1961, Washington // DC     # D.C. United

################
#  Illinois, IL

Soldier Field, 61_500,1924, 1410 S Museum Campus Drive // Chicago | IL 60605
$Toyota$ Park, 20_000, 2006,  Bridgeview // Illinois      # Chicago Fire

##############
# Ohio, OH

Crew Stadium|Columbus Crew Stadium,  20_145,  1999, 1 Black and Gold Boulevard // Columbus | OH 43211-2091   # Columbus Crew

##############
# Florida, FL

$Sun Life$ Stadium,   74_918, Miami (Miami Gardens), FL   # Miami Gardens is a suburban Miami city

################
# Texas, TX

$BBVA Compass$ Stadium,  22_000, 2012, 2200 Texas Avenue // Houston | TX 77003  # Houston Dynamo
Cowboys Stadium|$AT&T$ Stadium,  80_000, 2009, One Legends Way // Arlington | TX 76011   # within the Dallas–Fort Worth–Arlington metro area
$Toyota$ Stadium, 21_193, 2005,  9200 World Cup Way // Ste 202 // Frisco | TX 75034-4958   # FC Dallas

###############
# Oregon

Civic Stadium|Multnomah Field|Multnomah Stadium|$Jeld-Wen$ Field, 20_323, 1926, 1844 SW Morrison // Portland | OR 97205   # Portland Timbers

#############
# Utah

$Rio Tinto$ Stadium, 20_213,  Salt Lake City (Sandy)   # Sandy (City) - suburb of Salt Lake City

#####################
# Connecticut

Rentschler Field,  40_000, 2003, 615 Silver Lane // East Hartford | CT 06118

###############
# Massachusetts

$Gillette$ Stadium,  22_385, 2002, Foxborough // Massachusetts   # New England Revolution


text:
####################################
# México (Distrito Federal), D.F.

[azteca]
  Estadio Azteca|Azteca, 1966
  105_084
  es.wikipedia: Estadio_Azteca
  Calzada de Tlalpan 3465 // México, D.F.
  clubs: América

[azul]
  Estadio Azul|Azul, 1946
  40_000
  es.wikipedia: Estadio_Azul
  Indiana 260, Col. Nápoles // México | D. F.
  clubs: Cruz Azul

[olimpicouniversitario]
  Estadio Olímpico Universitario|Olímpico Universitario, 1952
  70_500
  es.wikipedia: Estadio_Olímpico_Universitario
  Av. Insurgents Sur s/n, Ciudad Universitaria, Coyoacán // México, D.F. C.P. 08400
  clubs: UNAM

#############################
# Estado de México, Edomex.

[nemesiodiez]
  Estadio Nemesio Díez|Nemesio Díez, 1954
  27_000
  Constituyentes No. 1000, Col. La Merced // Toluca, Estado de México
  clubs: Toluca

################
# Jalisco

[jalisco]
  Estadio Jalisco|Jalisco, 1960
  56_713
  es.wikipedia: Estadio_Jalisco
  Calle Siete Colinas 1772, Col. Independencia // Guadalajara, Jalisco
  clubs: Atlas

[guadalajara]
  Estadio Guadalajara|Estadio $Omnilife$|$Omnilife$, 2010
  49_850
  Av. Vallarta y Anillo Periférico, Zona Metropolitana de Guadalajara // Zapopan (Guadalajara), Jalisco
  clubs: Guadalajara

##################
# Nuevo León

[tecnologico]
  Estadio Tecnológico|Tecnológico, 1950
  36_485
  Av. Junco de la Vega s/n Col. Estadio // Monterrey, Nuevo León
  clubs: Monterrey

[universitario]
  Estadio Universitario|Universitario,  1967
  42_000,
  Av. Universidad s/n, San Nicolás de los Garza // Monterrey | Nuevo León
  clubs: Tigres

##################
# Michoacán

[morelos]
  Estadio Morelos|Morelos, 1989
  38_869
  Libramiento Norte s/n, Col. Leandro Valle // Morelia, Michoacán
  clubs: Morelia

###################
# Hidalgo

[hidalgo]
  Estadio Hidalgo|Hidalgo,  1993
  30_000
  Blvd Felipe Ángeles s/n, Col. Santa Julia // Pachuca | Hidalgo
  clubs: Pachuca

##################
# Puebla

[cuauhtemoc]
  Estadio Cuauhtémoc|Cuauhtémoc,  1968
  46_648
  Calz. Ignacio Zaragoza s/n, Col. Unidad Deportiva Puebla // Puebla, Puebla
  clubs: Puebla

##################
# Querétaro

[corregidora]
  Estadio La Corregidora|La Corregidora|Corregidora,  1985
  34_130
  Av. de las Torres s/n, Col. Colinas del Cimatario // Querétaro, Querétaro
  clubs: Querétaro

###############
# Veracruz

[luispiratafuente]
  Estadio Luis "Pirata" Fuente|Luis "Pirata" Fuente,  1968
  30_000
  Av. Paseos Jacarandas y Paseo Jardín Fraccionamiento Virginia Boca del Río // Veracruz, Veracruz
  clubs: Veracruz

###################
# Coahuila

[moctezuma]
  Estadio Moctezuma|Estadio $Corona$, 2009
  30_000
  Calz. Territorio Santos Modelo No. 1, Col. Conjunto de Todos los Santos // Torreón, Coahuila
  clubs: Santos

#################
# Guanajuato

[leon]
  Estadio León|León|Estadio Nou Camp, 1967
  33_943
  Boulevard Adolfo López Mateos 1810, Col. La Martinica // León, Guanajuato
  clubs: León

#################
# Baja California

[caliente]
  Estadio Caliente|Caliente,  2007
  24_000
  Boulevard Agua Caliente 12027, Col. Hipódromo // Tijuana, Baja California
  clubs: Tijuana

################
# Quintana Roo

[andresquintanaroo]
  Estadio Olímpico Andrés Quintana Roo|Olímpico Andrés Quintana Roo, 2007
  18_500
  Av. Mayapan, Kabah y Av. La Luna s/n, Colonia Centro // Cancún, Quintana Roo
  clubs: Atlante

##############
# Chiapas

[victormanuelreyna]
  Estadio Zoque Víctor Manuel Reyna|Víctor Manuel Reyna, 1982
  31_500
  Calz. de las Etnias s/n, esq. Blvd Fidel Velázquez, Col. Infonavit el Grijalva // Tuxtla Gutiérrez, Chiapas
  clubs: Chiapas


text:
############################
# World Cup 2022 stadiums

Lusail Stadium|Lusail Iconic Stadium, 88_966, Lusail
Al Bayt Stadium, 68_895, Al Khor
Khalifa International Stadium, 45_857, Al Rayyan
Ahmad bin Ali Stadium, 45_032, Al Rayyan
Education City Stadium, 44_667, Al Rayyan
Al Thumama Stadium, 44_400, Doha
Stadium 974, 44_089, Doha
Al Janoub Stadium, 44_325, Al Wakrah


text:
Amsterdam ArenA,    51_628, 1996, Amsterdam   # Ajax Amsterdam
Stadion Feijenoord|De Kuip, 51_137, 1937, Rotterdam   # Feyenoord Rotterdam


text:
############
#  note: use $$ for sponsored/commercial name e.g. $Allianz$ Stadium, etc.

Stadio Olimpico di Roma,     72_698, 1927,   Roma   # AS Roma, Lazio Roma

Stadio San Nicola,       58_248, 1990, Bari  # AS Bari
Stadio Giuseppe Meazza|San Siro, 80_074, 1926,   Milano  # AC Milano, Inter Milano
Stadio San Paolo,        60_240, 1959, Napoli   # SSC Napoli
$Allianz$ Stadium|Juventus Stadium,   41_507, 2009, Torino    # Juventus
Stadio Artemio Franchi, 43_325, 1931, Firenze   # Fiorentina
Stadio Friuli|Dacia Arena, 25_000, 1976, Udine  # Udinese
Stadio Renzo Barbera, 36_365, 1932, Palermo     # Palermo


text:
########################
# see www.bundesliga.de/de/fanzone/stadien
#
# note: use $$ for sponsored/commercial name  e.g. $Signal Iduna$ Park, $Veltins$-Arena, etc.

##############
# Berlin

Olympiastadion,   74_176, 1936,  Olympischer Platz 3 // 14053 Berlin    # Hertha BSC
Alte Försterei|Stadion An der Alten Försterei, 21_738, 1920,  An der Wuhlheide 263 // 12555 Berlin   # 1. FC Union Berlin

##################
# Brandenburg

Stadion der Freundschaft, 22_528, 1930, Am Eliaspark 1 // 03042 Cottbus   # Energie Cottbus

################
# Hamburg

Volksparkstadion|$Imtech$ Arena,  51_055, 1953, Sylvesterallee 7 // 22525 Hamburg  #  Hamburger SV
Millerntor-Stadion, 29_633,  Auf dem Heiligengeistfeld // 20359 Hamburg   # FC St. Pauli

#############
# Bremen

Weserstadion, 42_100, Franz-Böhmert-Straße 7 // 28205 Bremen  # Werder Bremen

###############
# Nordrhein-Westfalen

Westfalenstadion|$Signal Iduna$ Park,   67_000, Dortmund    #  Borussia Dortmund
Arena Auf Schalke|$Veltins$-Arena,  53_804,  Gelsenkirchen    # FC Schalke 04
Müngersdorfer Stadion|$RheinEnergie$ Stadion,  46_134, 2004,  Köln    #  1. FC Köln
Stadion im Borussia-Park, 54_049, Mönchengladbach   # Borussia Mönchengladbach
Ulrich-Haberland-Stadion|$Bay$Arena, 30_210, 1958, Leverkusen # Bayer 04 Leverkusen
Düsseldorf Arena|$Esprit$ Arena, 54_600, 2005, Arena-Straße 1 // 40474 Düsseldorf  # Fortuna Düsseldorf
Ruhrstadion|$Rewirpower$-Stadion,  29_299, 1911,   Bochum  # VfL Bochum
Bielefelder Alm|Alm-Stadion|$Schüco$ Arena,  27_300, 1926, Bielefeld   # Arminia Bielefeld
$Benteler$-Arena, 15_000, 2008, Paderborn  # SC Paderborn 07

###################
# Bayern - BY

$Allianz$ Arena, 66_016, 2005, Werner-Heisenberg-Allee 25 // 80939 München   #  FC Bayern München, TSV 1860 München
Frankenstadion|$Grundig$-Stadion,  41_926,  Max-Morlock-Platz 1 // 90480 Nürnberg  #  1. FC Nürnberg
Augsburg Arena|$SGL$ Arena, 30_660, 2009, Augsburg   # FC Augsburg
Ronhof|Sportpark Ronhof|$Trolli$ Arena, 18_000, 1910, Fürth  # SpVgg Greuther Fürth
$Audi$-Sportpark,  15_690, 2010,   Ingolstadt  # FC Ingolstadt 04

#############################
# Baden-Württemberg

Gottlieb-Daimler-Stadion|$Mercedes-Benz$ Arena,   54_267,  Stuttgart   #  VfB Stuttgart
Rhein-Neckar-Arena|$Wirsol$ Rhein-Neckar-Arena, 30_150,  2009, Sinsheim # TSG 1899 Hoffenheim
Dreisamstadion|$Mage Solar$ Stadion, 24_000, 1954,  Freiburg (im Breisgau)  # SC Freiburg
Wildparkstadion, 29_699, 1955, Karlsruhe  # Karlsruher SC
Städtisches Waldstadion Aalen|$Scholz$ Arena, 13_251, 1949, Aalen  # VfR Aalen
Hardtwaldstadion, 12_100, 1951, Sandhausen # SV Sandhausen
Albstadion|$Voith$-Arena, 15_000, Heidenheim # 1. FC Heidenheim 1846

##################
# Hessen

Waldstadion|$Commerzbank$-Arena, 48_132, Frankfurt    #  Eintracht Frankfurt
Stadion am Bornheimer Hang|$Frankfurter Volksbank$ Stadion, 12_542, 1931, Frankfurt   # FSV Frankfurt
Jonathan-Heimes-Stadion am Böllenfalltor, 17_468, Darmstadt # SV Darmstadt 98

####################
# Niedersachsen

Niedersachsenstadion|$HDI$-Arena, 44_652,  Hannover    #  Hannover 96
$Volkswagen$ Arena, 30_000,  2002, Wolfsburg  # VfL Wolfsburg
Eintracht-Stadion, 23_325,  1923, Braunschweig # Eintracht Braunschweig

###################
# Sachsen

Zentralstadion|$Red Bull$ Arena, 44_199, Leipzig   #  RB Leipzig
Dynamo-Stadion|Rudolf-Harbig-Stadion|$Glücksgas$-Stadion, 32_066,  Dresden   # Dynamo Dresden
Erzgebirgsstadion|$Sparkassen$-Erzgebirgsstadion, 15_711, Aue    # FC Erzgebirge Aue

######################
# Rheinland-Pfalz

Fritz-Walter-Stadion, 43_450, Kaiserslautern    #  1. FC Kaiserslautern
$Coface$ Arena, 33_500, 2011, Mainz  # 1. FSV Mainz 05


text:
############
#  note: use $$ for sponsored/commercial name e.g. $Emirates$ Stadium, etc.

Wembley|Wembley Stadium, 90_000, 2007, London
Ashburton Grove|$Emirates$ Stadium, 60_361, 2006,  London    # FC Arsenal

Old Trafford,    76_212,  1910, Manchester    # Manchester United
St. James' Park, 52_387,  1891,  Newcastle   # Newcastle United


text:
#########
# todo/fix: add regions/states/kantons

####################
#

Stade de Genève,  31_228, Geneva

######################
#

St. Jakob-Park,  42_000, Basel

###################
#

Stade de Suisse,  31_907, Bern

#######################
#

Letzigrund, 30_000, Zurich   # fix: use zuerich umlaut


text:
########################
# see de.wikipedia.org/wiki/Liste_der_größten_Stadien_in_Österreich

#
# note: use $$ for sponsored/commercial name  e.g. $UPC$-Arena, $Generali$ Arena, $Casino$-Stadion etc.

##############
# Wien, W

Happel-Stadion|Ernst-Happel-Stadion|Praterstadion,    53_295, 1931, Wien
Hanappi-Stadion|Gerhard-Hanappi-Stadion|Weststadion, 18_456, 1977, Wien
Horr-Stadion|Franz-Horr-Stadion|$Generali$ Arena,          13_135, 1925, Wien
Hohe Warte|Stadion Hohe Warte, 6_000,  Wien   # First Vienna FC
Wiener Sportclub-Platz, 8_700, 1904, Wien
Simmeringer Had, 5_000, 1920, Wien

########################
# Steiermark, ST

$UPC$-Arena, 15_323, 1997, Graz
Gruabn,    10_500, 1919, Graz
Franz-Fekete-Stadion,  12_000, 1950, Kapfenberg  # Kapfenberger SV
Stadion Hartberg,   6_000, Hartberg              # TSV Hartberg

########################
# Oberösterreich, O

Linzer Stadion|Stadion auf der Gugl, 20_104, 1952, Linz
$Keine Sorgen$ Arena, 7_334, 2003, Ried
Waldstadion, 7_152, Pasching
Vorwärts-Stadion, 10_000, Steyr

##################################
# Niederösterreich, N

Wiener Neustädter Stadion|Stadion Wiener Neustadt, 7_036,  1955, Wiener Neustadt
Bundesstadion Südstadt,    12_000, 1967, Maria Enzersdorf
$NV$-Arena|Niederösterreich-Arena, 8_000, 2012, St. Pölten    # SKN St. Pölten
Voithplatz, 8_000, St. Pölten   # SKN St. Pölten Amateure
Sportplatz Horn, 3_000, Horn   # SV Horn
Sepp-Doll-Stadion|Kremserstadion, 10_000, 1923, Krems

##############################
# Burgenland, B

Pappelstadion, 15_700, 1952, Mattersburg    # SV Mattersburg
Heidebodenstadion, 5_000, Parndorf     # SC-ESV Parndorf

#############
# Kaernten, K

Wörtherseestadion|$Hypo$-Arena,      32_000, 2008, Klagenfurt
Lavanttal-Arena,  7_700, 2003, Wolfsberg
Goldeckstadion, 6_500,  Spittal (an der Drau)

##############
# Salzburg, S

Wals-Siezenheim-Stadion|$Red Bull$ Arena, 31_020, 2003, Salzburg (Wals-Siezenheim)   # use Wals-Siezenheim ??
Untersberg-Arena, 2_955, 1989,  Grödig

#################
# Tirol, T

Tivoli|Tivoli-Neu Stadion, 17_400, 2000,  Innsbruck
Kufstein Arena|Grenzlandstadion, 5_000, 1925, Kufstein
Alpenstadion, 5_500, Wattens

##############################
# Vorarlberg, V

Schnabelholz|$Cashpoint$ Arena, 8_500, 1990, Altach      # SC Rheindorf Altach
Reichshofstadion, 8_800, 1953,  Lustenau   # SC Austria Lustenau
Bodenseestadion|$Casino$-Stadion, 12_000, 1951,  Bregenz
Stadion Birkenwiese, 12_000, 1935, Dornbirn


text:
Estadio Santiago Bernabéu,  85_454, 1947,  Madrid   # Real Madrid
Estadio Vicente Calderón,   55_005, 1966,  Madrid   # Atlético Madrid

Camp Nou, 96_636, 1957, Barcelona  # FC Barcelona
Estadi Olímpic Lluís Companys, 55_121, 1927,  Barcelona   # Espanyol Barcelona

Estadio Benito Villamarín,  51_309, 1929,  Sevilla   # Betis Sevilla
Estadio Olímpico de Sevilla, 57_619, 1997, Sevilla

Estadio Mestalla, 52_602, 1923, Valencia # FC Valencia
Estadi Ciutat de València|Estadio Ciudad de Valencia, 26_354, Valencia      # Levante
Coliseum Alfonso Pérez|Coliseum, 16_500, Getafe     # Getafe


text:
################################
# Stadiums in Russia (ru)

samara,           Samara Arena|Samara|Cosmos Arena,   45_000, Samara

nizhnynovgorod,   Nizhny Novgorod Stadium|Nizhny Novgorod,  45_000, Nizhny Novgorod

volgograd,        Volgograd Arena|Volgograd, 45_000, Volgograd

ekaterinburg,     Ekaterinburg Arena|Ekaterinburg|Central Stadium, 35_000, Ekaterinburg

mordovia,         Mordovia Arena|Mordovia, 44_000, Saransk

rostov,           Rostov Arena|Rostov, 45_000, Rostov-on-Don

kaliningrad,      Kaliningrad Stadium|Kaliningrad|Arena Baltika,  35_000, Kaliningrad

kazan,            Kazan Arena|Kazan, 45_000, Kazan

fisht,            Fisht Stadium|Fisht|Fisht Olympic Stadium, 45_000, Sochi

saintpetersburg,  Saint Petersburg Stadium|Saint Petersburg|Krestovsky Stadium|Zenit Arena, 67_000, Saint Petersburg

spartak,         Spartak Stadium|Spartak|Otkritie Arena|Otkrytiye Arena,  45_000, Moscow
luzhniki,        Luzhniki Stadium|Luzhniki, 80_000, Moscow


text:
###############################################
# Stadiums in Poland (pl)

National Stadium Warszawa, 56_070, Warszawa   # Warsaw (en)

PGE Arena,  39_150,  Gdansk  ### fix: add ń to asciffy!!! Gdańsk

Municipal Stadium Wrocław, 40_000,  Wrocław

Municipal Stadium Poznań, 39_550, Poznan  ###  fix: add ń to asciffy!!! Poznań


text:
Stade de France, 81_338, 1998, Paris (Saint-Denis)     ##   www.stadefrance.com   # fix: use Saint-Denis??
Parc des Princes,  51_000, 1972, Paris                 ##  www.leparcdesprinces.fr

Stade Vélodrome, 60_031, 1937, Marseille    ##  www.arema-velodrome.com   # teams: Olympique Marseille

Stade de Lyon|Stade des Lumières, 61_556, 2015, Lyon (Décines-Charpieu)   ##  www.grandstadeol.com  ## In Construction

Stade Pierre-Mauroy, 50_100, 2012, Lille (Villeneuve-d'Ascq)   ##  www.grandstade-lillemetropole.com

Stade Bollaert-Delelis|Stade Félix Bollaert-Delelis, 45_000, 1933, Lens

Stade de Bordeaux|Grand Stade de Bordeaux, 42_000, 2015, Bordeaux    ##  www.nouveau-stade-bordeaux.com    ## In Construction

Stade Geoffroy-Guichard, 1931, 41_000, Saint-Etienne   ### fix: add ÉÉÉÉÉ to asciify  Saint-Étienne

Stadium Municipal, 1937,  41_000, Toulouse

Stade de Nice|$Allianz$ Riviera, 2013,  35_624, Nice     ## Nizza (de)


text:
################################
# Stadiums in Ukraine (ua)

Olympic Stadium Kiev, 70_050, Kiev   # Київ

Donbass Arena, 51_500, Donetsk  # Донецьк (Donezk)

Metalist Stadium, 37_750, Kharkiv   # Харків (Charkiw)

Arena Lviv, 32_990, Lviv #  Львів (Lemberg)


text:
Estádio da Luz, 65_647, 2003, Lisboa     #  Benfica Lisboa
Estádio José Alvalade XXI,  50_466, 2003,  Lisboa  # Sporting Lisboa

Estádio do Dragão, 50_476, 2003, Porto   #  FC Porto


text:
##############
# Stadiums

# -- Africa

africa/ma-morocco--stadiums
africa/za-south-africa--stadiums

# -- Asia

asia/qa-qatar--stadiums

# -- Europe

europe/at-austria--stadiums
europe/ch-switzerland--stadiums
europe/de-deutschland--stadiums
europe/eng-england--stadiums
europe/es-espana--stadiums
europe/fr-france--stadiums
europe/it-italy--stadiums
europe/nl-netherlands--stadiums
europe/pl-poland--stadiums
europe/pt-portugal--stadiums
europe/ru-russia--stadiums
europe/ua-ukraine--stadiums

# -- North America

north-america/ca-canada--stadiums
north-america/mx-mexico--stadiums
north-america/us-united-states--stadiums

# -- South America

south-america/ar-argentina--stadiums
south-america/bo-bolivia--stadiums
south-america/br-brazil--stadiums
south-america/cl-chile--stadiums
south-america/co-colombia--stadiums
south-america/ec-ecuador--stadiums
south-america/pe-peru--stadiums
south-america/py-paraguay--stadiums
south-america/uy-uruguay--stadiums
south-america/ve-venezuela--stadiums


text:
#!/bin/sh
# ----------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#    http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
# ----------------------------------------------------------------------------

# ----------------------------------------------------------------------------
# Maven Start Up Batch script
#
# Required ENV vars:
# ------------------
#   JAVA_HOME - location of a JDK home dir
#
# Optional ENV vars
# -----------------
#   M2_HOME - location of maven2's installed home dir
#   MAVEN_OPTS - parameters passed to the Java VM when running Maven
#     e.g. to debug Maven itself, use
#       set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
#   MAVEN_SKIP_RC - flag to disable loading of mavenrc files
# ----------------------------------------------------------------------------

if [ -z "$MAVEN_SKIP_RC" ] ; then

  if [ -f /usr/local/etc/mavenrc ] ; then
    . /usr/local/etc/mavenrc
  fi

  if [ -f /etc/mavenrc ] ; then
    . /etc/mavenrc
  fi

  if [ -f "$HOME/.mavenrc" ] ; then
    . "$HOME/.mavenrc"
  fi

fi

# OS specific support.  $var _must_ be set to either true or false.
cygwin=false;
darwin=false;
mingw=false
case "`uname`" in
  CYGWIN*) cygwin=true ;;
  MINGW*) mingw=true;;
  Darwin*) darwin=true
    # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home
    # See https://developer.apple.com/library/mac/qa/qa1170/_index.html
    if [ -z "$JAVA_HOME" ]; then
      if [ -x "/usr/libexec/java_home" ]; then
        export JAVA_HOME="`/usr/libexec/java_home`"
      else
        export JAVA_HOME="/Library/Java/Home"
      fi
    fi
    ;;
esac

if [ -z "$JAVA_HOME" ] ; then
  if [ -r /etc/gentoo-release ] ; then
    JAVA_HOME=`java-config --jre-home`
  fi
fi

if [ -z "$M2_HOME" ] ; then
  ## resolve links - $0 may be a link to maven's home
  PRG="$0"

  # need this for relative symlinks
  while [ -h "$PRG" ] ; do
    ls=`ls -ld "$PRG"`
    link=`expr "$ls" : '.*-> \(.*\)$'`
    if expr "$link" : '/.*' > /dev/null; then
      PRG="$link"
    else
      PRG="`dirname "$PRG"`/$link"
    fi
  done

  saveddir=`pwd`

  M2_HOME=`dirname "$PRG"`/..

  # make it fully qualified
  M2_HOME=`cd "$M2_HOME" && pwd`

  cd "$saveddir"
  # echo Using m2 at $M2_HOME
fi

# For Cygwin, ensure paths are in UNIX format before anything is touched
if $cygwin ; then
  [ -n "$M2_HOME" ] &&
    M2_HOME=`cygpath --unix "$M2_HOME"`
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
  [ -n "$CLASSPATH" ] &&
    CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
fi

# For Mingw, ensure paths are in UNIX format before anything is touched
if $mingw ; then
  [ -n "$M2_HOME" ] &&
    M2_HOME="`(cd "$M2_HOME"; pwd)`"
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`"
fi

if [ -z "$JAVA_HOME" ]; then
  javaExecutable="`which javac`"
  if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then
    # readlink(1) is not available as standard on Solaris 10.
    readLink=`which readlink`
    if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then
      if $darwin ; then
        javaHome="`dirname \"$javaExecutable\"`"
        javaExecutable="`cd \"$javaHome\" && pwd -P`/javac"
      else
        javaExecutable="`readlink -f \"$javaExecutable\"`"
      fi
      javaHome="`dirname \"$javaExecutable\"`"
      javaHome=`expr "$javaHome" : '\(.*\)/bin'`
      JAVA_HOME="$javaHome"
      export JAVA_HOME
    fi
  fi
fi

if [ -z "$JAVACMD" ] ; then
  if [ -n "$JAVA_HOME"  ] ; then
    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
      # IBM's JDK on AIX uses strange locations for the executables
      JAVACMD="$JAVA_HOME/jre/sh/java"
    else
      JAVACMD="$JAVA_HOME/bin/java"
    fi
  else
    JAVACMD="`\\unset -f command; \\command -v java`"
  fi
fi

if [ ! -x "$JAVACMD" ] ; then
  echo "Error: JAVA_HOME is not defined correctly." >&2
  echo "  We cannot execute $JAVACMD" >&2
  exit 1
fi

if [ -z "$JAVA_HOME" ] ; then
  echo "Warning: JAVA_HOME environment variable is not set."
fi

CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher

# traverses directory structure from process work directory to filesystem root
# first directory with .mvn subdirectory is considered project base directory
find_maven_basedir() {

  if [ -z "$1" ]
  then
    echo "Path not specified to find_maven_basedir"
    return 1
  fi

  basedir="$1"
  wdir="$1"
  while [ "$wdir" != '/' ] ; do
    if [ -d "$wdir"/.mvn ] ; then
      basedir=$wdir
      break
    fi
    # workaround for JBEAP-8937 (on Solaris 10/Sparc)
    if [ -d "${wdir}" ]; then
      wdir=`cd "$wdir/.."; pwd`
    fi
    # end of workaround
  done
  echo "${basedir}"
}

# concatenates all lines of a file
concat_lines() {
  if [ -f "$1" ]; then
    echo "$(tr -s '\n' ' ' < "$1")"
  fi
}

BASE_DIR=`find_maven_basedir "$(pwd)"`
if [ -z "$BASE_DIR" ]; then
  exit 1;
fi

##########################################################################################
# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
# This allows using the maven wrapper in projects that prohibit checking in binary data.
##########################################################################################
if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Found .mvn/wrapper/maven-wrapper.jar"
    fi
else
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..."
    fi
    if [ -n "$MVNW_REPOURL" ]; then
      jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
    else
      jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
    fi
    while IFS="=" read key value; do
      case "$key" in (wrapperUrl) jarUrl="$value"; break ;;
      esac
    done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties"
    if [ "$MVNW_VERBOSE" = true ]; then
      echo "Downloading from: $jarUrl"
    fi
    wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar"
    if $cygwin; then
      wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"`
    fi

    if command -v wget > /dev/null; then
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Found wget ... using wget"
        fi
        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
            wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
        else
            wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath"
        fi
    elif command -v curl > /dev/null; then
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Found curl ... using curl"
        fi
        if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then
            curl -o "$wrapperJarPath" "$jarUrl" -f
        else
            curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f
        fi

    else
        if [ "$MVNW_VERBOSE" = true ]; then
          echo "Falling back to using Java to download"
        fi
        javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java"
        # For Cygwin, switch paths to Windows format before running javac
        if $cygwin; then
          javaClass=`cygpath --path --windows "$javaClass"`
        fi
        if [ -e "$javaClass" ]; then
            if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
                if [ "$MVNW_VERBOSE" = true ]; then
                  echo " - Compiling MavenWrapperDownloader.java ..."
                fi
                # Compiling the Java class
                ("$JAVA_HOME/bin/javac" "$javaClass")
            fi
            if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then
                # Running the downloader
                if [ "$MVNW_VERBOSE" = true ]; then
                  echo " - Running MavenWrapperDownloader.java ..."
                fi
                ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR")
            fi
        fi
    fi
fi
##########################################################################################
# End of extension
##########################################################################################

export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"}
if [ "$MVNW_VERBOSE" = true ]; then
  echo $MAVEN_PROJECTBASEDIR
fi
MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS"

# For Cygwin, switch paths to Windows format before running java
if $cygwin; then
  [ -n "$M2_HOME" ] &&
    M2_HOME=`cygpath --path --windows "$M2_HOME"`
  [ -n "$JAVA_HOME" ] &&
    JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"`
  [ -n "$CLASSPATH" ] &&
    CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
  [ -n "$MAVEN_PROJECTBASEDIR" ] &&
    MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"`
fi

# Provide a "standardized" way to retrieve the CLI args that will
# work with both Windows and non-Windows executions.
MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@"
export MAVEN_CMD_LINE_ARGS

WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain

exec "$JAVACMD" \
  $MAVEN_OPTS \
  $MAVEN_DEBUG_OPTS \
  -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \
  "-Dmaven.home=${M2_HOME}" \
  "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
  ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@"

repo_name: vaadin/skeleton-starter-flow-spring

repo_language: Java

file_name: README


text:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <!-- Vaadin project from https://github.com/vaadin/skeleton-starter-flow-spring -->
    <groupId>com.example</groupId>
    <artifactId>spring-skeleton</artifactId>
    <name>Project base for Spring Boot and Vaadin Flow</name>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <properties>
        <java.version>17</java.version>
        <vaadin.version>24.1.5</vaadin.version>
        <selenium.version>4.11.0</selenium.version>
    </properties>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>3.1.0</version>
    </parent>

    <repositories>
        <repository>
            <id>Vaadin Directory</id>
            <url>https://maven.vaadin.com/vaadin-addons</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>com.vaadin</groupId>
                <artifactId>vaadin-bom</artifactId>
                <version>${vaadin.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <dependencies>
        <dependency>
            <groupId>com.vaadin</groupId>
            <!-- Replace artifactId with vaadin-core to use only free components -->
            <artifactId>vaadin</artifactId>
        </dependency>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-spring-boot-starter</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-validation</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.vaadin</groupId>
            <artifactId>vaadin-testbench-junit5</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <defaultGoal>spring-boot:run</defaultGoal>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <jvmArguments>-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments>
                    <wait>500</wait>
                    <maxAttempts>240</maxAttempts>
                </configuration>
            </plugin>

            <plugin>
                <groupId>com.vaadin</groupId>
                <artifactId>vaadin-maven-plugin</artifactId>
                <version>${vaadin.version}</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>prepare-frontend</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <!-- Production mode is activated using -Pproduction -->
            <id>production</id>
            <dependencies>
                <!-- Exclude development dependencies from production -->
                <dependency>
                    <groupId>com.vaadin</groupId>
                    <artifactId>vaadin-core</artifactId>
                    <exclusions>
                        <exclusion>
                            <groupId>com.vaadin</groupId>
                            <artifactId>vaadin-dev</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
            </dependencies>
            <build>
                <plugins>
                    <plugin>
                        <groupId>com.vaadin</groupId>
                        <artifactId>vaadin-maven-plugin</artifactId>
                        <version>${vaadin.version}</version>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>build-frontend</goal>
                                </goals>
                                <phase>compile</phase>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <profile>
            <id>it</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>start-spring-boot</id>
                                <phase>pre-integration-test</phase>
                                <goals>
                                    <goal>start</goal>
                                </goals>
                            </execution>
                            <execution>
                                <id>stop-spring-boot</id>
                                <phase>post-integration-test</phase>
                                <goals>
                                    <goal>stop</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>

                    <!-- Runs the integration tests (*IT) after the server is started -->
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-failsafe-plugin</artifactId>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>integration-test</goal>
                                    <goal>verify</goal>
                                </goals>
                            </execution>
                        </executions>
                        <configuration>
                            <trimStackTrace>false</trimStackTrace>
                            <enableAssertions>true</enableAssertions>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
        </profile>

    </profiles>
</project>


text:
@REM ----------------------------------------------------------------------------
@REM Licensed to the Apache Software Foundation (ASF) under one
@REM or more contributor license agreements.  See the NOTICE file
@REM distributed with this work for additional information
@REM regarding copyright ownership.  The ASF licenses this file
@REM to you under the Apache License, Version 2.0 (the
@REM "License"); you may not use this file except in compliance
@REM with the License.  You may obtain a copy of the License at
@REM
@REM    http://www.apache.org/licenses/LICENSE-2.0
@REM
@REM Unless required by applicable law or agreed to in writing,
@REM software distributed under the License is distributed on an
@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@REM KIND, either express or implied.  See the License for the
@REM specific language governing permissions and limitations
@REM under the License.
@REM ----------------------------------------------------------------------------

@REM ----------------------------------------------------------------------------
@REM Maven Start Up Batch script
@REM
@REM Required ENV vars:
@REM JAVA_HOME - location of a JDK home dir
@REM
@REM Optional ENV vars
@REM M2_HOME - location of maven2's installed home dir
@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands
@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending
@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven
@REM     e.g. to debug Maven itself, use
@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000
@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files
@REM ----------------------------------------------------------------------------

@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on'
@echo off
@REM set title of command window
title %0
@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on'
@if "%MAVEN_BATCH_ECHO%" == "on"  echo %MAVEN_BATCH_ECHO%

@REM set %HOME% to equivalent of $HOME
if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%")

@REM Execute a user defined script before this one
if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre
@REM check for pre script, once with legacy .bat ending and once with .cmd ending
if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %*
if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %*
:skipRcPre

@setlocal

set ERROR_CODE=0

@REM To isolate internal variables from possible post scripts, we use another setlocal
@setlocal

@REM ==== START VALIDATION ====
if not "%JAVA_HOME%" == "" goto OkJHome

echo.
echo Error: JAVA_HOME not found in your environment. >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error

:OkJHome
if exist "%JAVA_HOME%\bin\java.exe" goto init

echo.
echo Error: JAVA_HOME is set to an invalid directory. >&2
echo JAVA_HOME = "%JAVA_HOME%" >&2
echo Please set the JAVA_HOME variable in your environment to match the >&2
echo location of your Java installation. >&2
echo.
goto error

@REM ==== END VALIDATION ====

:init

@REM Find the project base dir, i.e. the directory that contains the folder ".mvn".
@REM Fallback to current working directory if not found.

set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR%
IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir

set EXEC_DIR=%CD%
set WDIR=%EXEC_DIR%
:findBaseDir
IF EXIST "%WDIR%"\.mvn goto baseDirFound
cd ..
IF "%WDIR%"=="%CD%" goto baseDirNotFound
set WDIR=%CD%
goto findBaseDir

:baseDirFound
set MAVEN_PROJECTBASEDIR=%WDIR%
cd "%EXEC_DIR%"
goto endDetectBaseDir

:baseDirNotFound
set MAVEN_PROJECTBASEDIR=%EXEC_DIR%
cd "%EXEC_DIR%"

:endDetectBaseDir

IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig

@setlocal EnableExtensions EnableDelayedExpansion
for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a
@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS%

:endReadAdditionalConfig

SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe"
set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar"
set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain

set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"

FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO (
    IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B
)

@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central
@REM This allows using the maven wrapper in projects that prohibit checking in binary data.
if exist %WRAPPER_JAR% (
    if "%MVNW_VERBOSE%" == "true" (
        echo Found %WRAPPER_JAR%
    )
) else (
    if not "%MVNW_REPOURL%" == "" (
        SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar"
    )
    if "%MVNW_VERBOSE%" == "true" (
        echo Couldn't find %WRAPPER_JAR%, downloading it ...
        echo Downloading from: %DOWNLOAD_URL%
    )

    powershell -Command "&{"^
		"$webclient = new-object System.Net.WebClient;"^
		"if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^
		"$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^
		"}"^
		"[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^
		"}"
    if "%MVNW_VERBOSE%" == "true" (
        echo Finished downloading %WRAPPER_JAR%
    )
)
@REM End of extension

@REM Provide a "standardized" way to retrieve the CLI args that will
@REM work with both Windows and non-Windows executions.
set MAVEN_CMD_LINE_ARGS=%*

%MAVEN_JAVA_EXE% ^
  %JVM_CONFIG_MAVEN_PROPS% ^
  %MAVEN_OPTS% ^
  %MAVEN_DEBUG_OPTS% ^
  -classpath %WRAPPER_JAR% ^
  "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
  %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %*
if ERRORLEVEL 1 goto error
goto end

:error
set ERROR_CODE=1

:end
@endlocal & set ERROR_CODE=%ERROR_CODE%

if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost
@REM check for post script, once with legacy .bat ending and once with .cmd ending
if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat"
if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd"
:skipRcPost

@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on'
if "%MAVEN_BATCH_PAUSE%"=="on" pause

if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE%

cmd /C exit /B %ERROR_CODE%


text:
# Project Base for Vaadin and Spring Boot

This project can be used as a starting point to create your own Vaadin application with Spring Boot.
It contains all the necessary configuration and some placeholder files to get you started.

The best way to create your own project based on this starter is [start.vaadin.com](https://start.vaadin.com/) - you can get only the necessary parts and choose the package naming you want to use.

## Running the Application
There are two ways to run the application :  using `mvn spring-boot:run` or by running the `Application` class directly from your IDE.

You can use any IDE of your preference,but we suggest Eclipse or Intellij IDEA.
Below are the configuration details to start the project using a `spring-boot:run` command. Both Eclipse and Intellij IDEA are covered.

#### Eclipse
- Right click on a project folder and select `Run As` --> `Maven build..` . After that a configuration window is opened.
- In the window set the value of the **Goals** field to `spring-boot:run`
- You can optionally select `Skip tests` checkbox
- All the other settings can be left to default

Once configurations are set clicking `Run` will start the application

#### Intellij IDEA
- On the right side of the window, select Maven --> Plugins--> `spring-boot` --> `spring-boot:run` goal
- Optionally, you can disable tests by clicking on a `Skip Tests mode` blue button.

Clicking on the green run button will start the application.

After the application has started, you can view your it at http://localhost:8080/ in your browser.

If you want to run the application locally in the production mode, use `spring-boot:run -Pproduction` command instead.
### Running Integration Tests

Integration tests are implemented using [Vaadin TestBench](https://vaadin.com/testbench). The tests take a few minutes to run and are therefore included in a separate Maven profile. We recommend running tests with a production build to minimize the chance of development time toolchains affecting test stability. To run the tests using Google Chrome, execute

`mvn verify -Pit,production`

and make sure you have a valid TestBench license installed.

Profile `it` adds the following parameters to run integration tests:
```sh
-Dwebdriver.chrome.driver=path_to_driver
-Dcom.vaadin.testbench.Parameters.runLocally=chrome
```

If you would like to run a separate test make sure you have added these parameters to VM Options of JUnit run configuration

### Live Reload (optional)

With live reload, you can see the results of your code changes immediately.
When you edit your Java code and recompile it, the application changes will be automatically reloaded and the browser is refreshed.
This is done by leveraging [Spring Boot Developer Tools](https://docs.spring.io/spring-boot/docs/2.1.5.RELEASE/reference/html/using-boot-devtools.html).
To be able to see the changes in the browser tab, the page still needs to be reloaded.
That can also  be automated via a LiveReload browser extension.
One such extension for Google Chrome is [LiveReload](https://chrome.google.com/webstore/detail/livereload/jnihajbhpnppcggbcgedagnkighmdlei).
In Firefox, [LiveReload - Web extension](https://addons.mozilla.org/en-US/firefox/addon/livereload-web-extension/) can be used.
You can find such similar extensions for other major browsers too.
These extensions add an icon to your browser next to the address bar.
To enable the extension, you should click that icon after you opened your application.

You can find more information at [Live Reload in Spring Boot Applications](https://vaadin.com/docs/flow/workflow/tutorial-spring-boot-live-reload.html) document.

## Structure

Vaadin web applications are full-stack and include both client-side and server-side code in the same project.

| Directory | Description |
| :--- | :--- |
| `frontend/` | Client-side source directory |
|     `index.html` | HTML template |
|     `index.ts` | Frontend entrypoint |
|     `main-layout.ts` | Main layout Web Component (optional) |
|     `views/` | UI views Web Components (TypeScript / HTML) |
|     `styles/` | Styles directory (CSS) |
| `src/main/java/<groupId>/` | Server-side source directory |
|     `Application.java` | Server entrypoint |
|     `AppShell.java` | application-shell configuration |

## Useful links

- Read the documentation at [vaadin.com/docs](https://vaadin.com/docs).
- Follow the tutorials at [vaadin.com/tutorials](https://vaadin.com/tutorials).
- Watch training videos and get certified at [vaadin.com/learn/training](https://vaadin.com/learn/training).
- Create new projects at [start.vaadin.com](https://start.vaadin.com/).
- Search UI components and their usage examples at [vaadin.com/components](https://vaadin.com/components).
- View use case applications that demonstrate Vaadin capabilities at [vaadin.com/examples-and-demos](https://vaadin.com/examples-and-demos).
- Discover Vaadin's set of CSS utility classes that enable building any UI without custom CSS in the [docs](https://vaadin.com/docs/latest/ds/foundation/utility-classes).
- Find a collection of solutions to common use cases in [Vaadin Cookbook](https://cookbook.vaadin.com/).
- Find Add-ons at [vaadin.com/directory](https://vaadin.com/directory).
- Ask questions on [Stack Overflow](https://stackoverflow.com/questions/tagged/vaadin) or join our [Discord channel](https://discord.gg/MYFq5RTbBn).
- Report issues, create pull requests in [GitHub](https://github.com/vaadin/platform).


text:
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
  <component name="PackageJsonUpdateNotifier">
    <dismissed value="$PROJECT_DIR$/package.json" />
  </component>
</project>


text:
/*
 * Copyright 2007-present the original author or authors.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import java.net.*;
import java.io.*;
import java.nio.channels.*;
import java.util.Properties;

public class MavenWrapperDownloader {

    private static final String WRAPPER_VERSION = "0.5.6";
    /**
     * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is
     * provided.
     */
    private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/"
            + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar";

    /**
     * Path to the maven-wrapper.properties file, which might contain a downloadUrl
     * property to use instead of the default one.
     */
    private static final String MAVEN_WRAPPER_PROPERTIES_PATH = ".mvn/wrapper/maven-wrapper.properties";

    /**
     * Path where the maven-wrapper.jar will be saved to.
     */
    private static final String MAVEN_WRAPPER_JAR_PATH = ".mvn/wrapper/maven-wrapper.jar";

    /**
     * Name of the property which should be used to override the default download
     * url for the wrapper.
     */
    private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl";

    public static void main(String args[]) {
        System.out.println("- Downloader started");
        File baseDirectory = new File(args[0]);
        System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath());

        // If the maven-wrapper.properties exists, read it and check if it contains a
        // custom
        // wrapperUrl parameter.
        File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH);
        String url = DEFAULT_DOWNLOAD_URL;
        if (mavenWrapperPropertyFile.exists()) {
            FileInputStream mavenWrapperPropertyFileInputStream = null;
            try {
                mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile);
                Properties mavenWrapperProperties = new Properties();
                mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream);
                url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url);
            } catch (IOException e) {
                System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'");
            } finally {
                try {
                    if (mavenWrapperPropertyFileInputStream != null) {
                        mavenWrapperPropertyFileInputStream.close();
                    }
                } catch (IOException e) {
                    // Ignore ...
                }
            }
        }
        System.out.println("- Downloading from: " + url);

        File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH);
        if (!outputFile.getParentFile().exists()) {
            if (!outputFile.getParentFile().mkdirs()) {
                System.out.println(
                        "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'");
            }
        }
        System.out.println("- Downloading to: " + outputFile.getAbsolutePath());
        try {
            downloadFileFromURL(url, outputFile);
            System.out.println("Done");
            System.exit(0);
        } catch (Throwable e) {
            System.out.println("- Error downloading");
            e.printStackTrace();
            System.exit(1);
        }
    }

    private static void downloadFileFromURL(String urlString, File destination) throws Exception {
        if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) {
            String username = System.getenv("MVNW_USERNAME");
            char[] password = System.getenv("MVNW_PASSWORD").toCharArray();
            Authenticator.setDefault(new Authenticator() {
                @Override
                protected PasswordAuthentication getPasswordAuthentication() {
                    return new PasswordAuthentication(username, password);
                }
            });
        }
        URL website = new URL(urlString);
        ReadableByteChannel rbc;
        rbc = Channels.newChannel(website.openStream());
        FileOutputStream fos = new FileOutputStream(destination);
        fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE);
        fos.close();
        rbc.close();
    }

}


text:
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.4/apache-maven-3.8.4-bin.zip
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar


text:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
	<include resource="org/springframework/boot/logging/logback/console-appender.xml"/>

	<root level="INFO">
		<appender-ref ref="CONSOLE"/>
	</root>
</configuration>