Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v143(vc17) & OpenCV4.5.5 #1358

Merged
merged 19 commits into from
Dec 31, 2021
2 changes: 1 addition & 1 deletion .github/workflows/linux-arm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
DEBIAN_FRONTEND: noninteractive
OPENCV_VERSION: 4.5.3
OPENCV_VERSION: 4.5.5

jobs:
build:
Expand Down
28 changes: 17 additions & 11 deletions .github/workflows/macos10.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
DEBIAN_FRONTEND: noninteractive
OPENCV_VERSION: 4.5.3
OPENCV_VERSION: 4.5.5

jobs:
build:
Expand All @@ -23,7 +23,7 @@ jobs:

- name: Install build dependencies
run: |
brew install wget pkg-config mono-libgdiplus gtk+ ffmpeg glog yasm harfbuzz jpeg libpng libtiff openexr openjpeg metis openblas opencore-amr protobuf tbb webp
brew install wget pkg-config mono-libgdiplus gtk+ ffmpeg glog yasm harfbuzz jpeg libpng libtiff openjpeg metis openblas opencore-amr protobuf tbb webp # openexr

# - name: Cache OpenCV
# id: opencv-cache
Expand Down Expand Up @@ -54,7 +54,7 @@ jobs:
-DBUILD_opencv_ts=OFF \
-DBUILD_opencv_js=OFF \
-DBUILD_opencv_js_bindings_generator=OFF \
-DBUILD_opencv_app=OFF \
-DBUILD_opencv_apps=OFF \
-DBUILD_opencv_barcode=OFF \
-DBUILD_opencv_bioinspired=OFF \
-DBUILD_opencv_ccalib=OFF \
Expand All @@ -76,6 +76,7 @@ jobs:
-DWITH_GSTREAMER=OFF \
-DWITH_EIGEN=OFF \
-DWITH_ADE=OFF \
-DWITH_OPENEXR=OFF \
-DOPENCV_ENABLE_NONFREE=ON \
-DCMAKE_INSTALL_PREFIX=${GITHUB_WORKSPACE}/opencv_macos ..
make -j2
Expand All @@ -100,8 +101,13 @@ jobs:
nm libOpenCvSharpExtern.dylib
echo -ne "#include <stdio.h> \n int core_Mat_sizeof(); int main(){ int i = core_Mat_sizeof(); printf(\"sizeof(Mat) = %d\", i); return 0; }" > test.c
gcc -I./ -L./ test.c -o test -lOpenCvSharpExtern
LD_LIBRARY_PATH=. ./test

LD_LIBRARY_PATH=. ./test

- name: Install .NET
uses: actions/setup-dotnet@v1
with:
dotnet-version: '6.0.x'

- name: Create NuGet package
env:
BETA: ""
Expand All @@ -122,16 +128,16 @@ jobs:
run: |
cd ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests
# ls
dotnet build -c Release -f net5.0
cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.dylib ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net5.0/
dotnet build -c Release -f net6.0
cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.dylib ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net6.0/
cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.dylib ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/
# ls ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net5.0/
# ls ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net6.0/
# ls
sudo cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.dylib /usr/local/lib/
LD_LIBRARY_PATH=.
dotnet test OpenCvSharp.Tests.csproj -c Release -f net5.0 --runtime osx-x64 --logger "trx;LogFileName=test-results.trx" < /dev/null
# ls
# ls TestResults
dotnet test OpenCvSharp.Tests.csproj -c Release -f net6.0 --runtime osx-x64 --logger "trx;LogFileName=test-results.trx" < /dev/null
ls
ls TestResults

- uses: actions/upload-artifact@v1
with:
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/ubuntu18.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
DEBIAN_FRONTEND: noninteractive
OPENCV_VERSION: 4.5.3
OPENCV_VERSION: 4.5.5

jobs:
build:
Expand Down Expand Up @@ -77,7 +77,7 @@ jobs:
-D BUILD_PERF_TESTS=OFF \
-D BUILD_TESTS=OFF \
-D BUILD_JAVA=OFF \
-D BUILD_opencv_app=OFF \
-D BUILD_opencv_apps=OFF \
-D BUILD_opencv_barcode=OFF \
-D BUILD_opencv_java_bindings_generator=OFF \
-D BUILD_opencv_python_bindings_generator=OFF \
Expand Down Expand Up @@ -137,7 +137,7 @@ jobs:
- name: Install .NET
uses: actions/setup-dotnet@v1
with:
dotnet-version: '5.0.x'
dotnet-version: '6.0.x'

- name: Create NuGet package
env:
Expand All @@ -158,12 +158,12 @@ jobs:
- name: Test
run: |
cd ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests
dotnet build -c Release -f net5.0
cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.so ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net5.0/
dotnet build -c Release -f net6.0
cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.so ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net6.0/
cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.so ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/
sudo cp ${GITHUB_WORKSPACE}/nuget/libOpenCvSharpExtern.so /usr/lib/
# ls ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net5.0/
# ls ${GITHUB_WORKSPACE}/test/OpenCvSharp.Tests/bin/Release/net6.0/
# ls
LD_LIBRARY_PATH=. dotnet test OpenCvSharp.Tests.csproj -c Release -f net5.0 --runtime ubuntu.18.04-x64 --logger "trx;LogFileName=test-results.trx" < /dev/null
LD_LIBRARY_PATH=. dotnet test OpenCvSharp.Tests.csproj -c Release -f net6.0 --runtime ubuntu.18.04-x64 --logger "trx;LogFileName=test-results.trx" < /dev/null
# ls
# ls TestResults
4 changes: 2 additions & 2 deletions .github/workflows/wasm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
DEBIAN_FRONTEND: noninteractive
OPENCV_VERSION: 4.5.3
OPENCV_VERSION: 4.5.5
EM_VERSION: 2.0.23
EM_CACHE_FOLDER: 'emsdk-cache'

Expand Down Expand Up @@ -95,7 +95,7 @@ jobs:
-DBUILD_opencv_ts=OFF \
-DBUILD_opencv_js=OFF \
-DBUILD_opencv_js_bindings_generator=OFF \
-DBUILD_opencv_app=OFF \
-DBUILD_opencv_apps=OFF \
-DBUILD_opencv_barcode=OFF \
-DBUILD_opencv_bioinspired=OFF \
-DBUILD_opencv_ccalib=OFF \
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,12 @@ on:
- master

env:
OPENCV_VERSION: 4.5.3
OPENCV_VERSION: 4.5.5

jobs:
build:

runs-on: windows-2019
runs-on: windows-2022

steps:
- name: Checkout
Expand Down Expand Up @@ -58,7 +58,7 @@ jobs:
uses: actions/cache@v2
with:
path: ${{ github.workspace }}/tesseract_files
key: tesseract-rev2
key: tesseract-41-rev1

- name: Download Tesseract binaries
if: steps.cache_tesseract.outputs.cache-hit != 'true'
Expand Down
10 changes: 5 additions & 5 deletions download_opencv_windows.ps1
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
$tag = "4.5.3.20210711"
$version = "453"
$uriArray =@(
$tag = "4.5.5.20211229"
$version = "455"
$uriArray = @(
"https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_win_x64.zip"
"https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_win_x86.zip"
"https://github.com/shimat/opencv_files/releases/download/${tag}/opencv${version}_uwp_x64.zip"
Expand All @@ -18,9 +18,9 @@ function Download($uri, $outFile) {
New-Item opencv_files -Type directory -Force -ErrorAction Stop | Out-Null
cd opencv_files

[Net.ServicePointManager]::SecurityProtocol = @([Net.SecurityProtocolType]::Tls,[Net.SecurityProtocolType]::Tls11,[Net.SecurityProtocolType]::Tls12)
[Net.ServicePointManager]::SecurityProtocol = @([Net.SecurityProtocolType]::Tls, [Net.SecurityProtocolType]::Tls11, [Net.SecurityProtocolType]::Tls12)

foreach($uri in $uriArray){
foreach ($uri in $uriArray) {
$outFile = [System.IO.Path]::GetFileName($uri)
$outFileWithoutExtension = [System.IO.Path]::GetFileNameWithoutExtension($uri)
Download $uri $outFile
Expand Down
8 changes: 4 additions & 4 deletions download_tesseract_windows.ps1
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
$uriArray =@(
"https://github.com/shimat/tesseract_vcpkg/releases/download/2020.12.29/tesseract_vcpkg.0.0.6-beta.zip"
$uriArray = @(
"https://github.com/shimat/tesseract_vcpkg/releases/download/2021.12.31/tesseract_vcpkg.0.0.7-beta.zip"
)

function Download($uri, $outFile) {
Expand All @@ -12,9 +12,9 @@ function Download($uri, $outFile) {
mkdir tesseract_files -Force -ErrorAction Stop | Out-Null
cd tesseract_files

[Net.ServicePointManager]::SecurityProtocol = @([Net.SecurityProtocolType]::Tls,[Net.SecurityProtocolType]::Tls11,[Net.SecurityProtocolType]::Tls12)
[Net.ServicePointManager]::SecurityProtocol = @([Net.SecurityProtocolType]::Tls, [Net.SecurityProtocolType]::Tls11, [Net.SecurityProtocolType]::Tls12)

foreach($uri in $uriArray){
foreach ($uri in $uriArray) {
$outFile = "tesseract_vcpkg.zip"
$outFileWithoutExtension = [System.IO.Path]::GetFileNameWithoutExtension($outFile)
Download $uri $outFile
Expand Down
16 changes: 8 additions & 8 deletions nuget/OpenCvSharp4.Extensions.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@
<tags>Image Processing OpenCV Wrapper FFI opencvsharp</tags>
<repository type="git" url="https://github.com/shimat/opencvsharp.git" />
<dependencies>
<group targetFramework="net461">
<group targetFramework="net48">
<dependency id="OpenCvSharp4" version="4.5.3.20211226" />
<dependency id="System.Drawing.Common" version="5.0.3" />
</group>
<group targetFramework="netstandard2.0">
<dependency id="OpenCvSharp4" version="4.5.3.20211226" />
<dependency id="OpenCvSharp4" version="4.3.0.20190901" />
<dependency id="System.Drawing.Common" version="5.0.3" />
</group>
<group targetFramework="netstandard2.1">
Expand All @@ -38,15 +38,15 @@
</group>
</dependencies>
<frameworkAssemblies>
<frameworkAssembly assemblyName="System.Drawing" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Core" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Xaml" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Drawing" targetFramework="net48" />
<frameworkAssembly assemblyName="System.Core" targetFramework="net48" />
<frameworkAssembly assemblyName="System.Xaml" targetFramework="net48" />
</frameworkAssemblies>
</metadata>
<files>
<file src="..\src\OpenCvSharp.Extensions\bin\Release\net461\OpenCvSharp.Extensions.dll" target="lib\net461" />
<file src="..\src\OpenCvSharp.Extensions\bin\Release\net461\OpenCvSharp.Extensions.pdb" target="lib\net461" />
<file src="..\src\OpenCvSharp.Extensions\bin\Release\net461\OpenCvSharp.Extensions.xml" target="lib\net461" />
<file src="..\src\OpenCvSharp.Extensions\bin\Release\net48\OpenCvSharp.Extensions.dll" target="lib\net48" />
<file src="..\src\OpenCvSharp.Extensions\bin\Release\net48\OpenCvSharp.Extensions.pdb" target="lib\net48" />
<file src="..\src\OpenCvSharp.Extensions\bin\Release\net48\OpenCvSharp.Extensions.xml" target="lib\net48" />

<file src="..\src\OpenCvSharp.Extensions\bin\Release\netstandard2.0\OpenCvSharp.Extensions.dll" target="lib\netstandard2.0" />
<file src="..\src\OpenCvSharp.Extensions\bin\Release\netstandard2.0\OpenCvSharp.Extensions.pdb" target="lib\netstandard2.0" />
Expand Down
2 changes: 1 addition & 1 deletion nuget/OpenCvSharp4.Windows.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<tags>Image Processing OpenCV Wrapper FFI opencvsharp</tags>
<repository type="git" url="https://github.com/shimat/opencvsharp.git" />
<dependencies>
<group targetFramework="net461">
<group targetFramework="net48">
<dependency id="OpenCvSharp4" version="4.3.0.20190901" />
<dependency id="OpenCvSharp4.WpfExtensions" version="4.3.0.20190901" />
<dependency id="OpenCvSharp4.runtime.win" version="4.3.0.20190901" />
Expand Down
18 changes: 9 additions & 9 deletions nuget/OpenCvSharp4.WpfExtensions.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -16,25 +16,25 @@
<tags>Image Processing OpenCV Wrapper FFI opencvsharp</tags>
<repository type="git" url="https://github.com/shimat/opencvsharp.git" />
<dependencies>
<group targetFramework="net461">
<group targetFramework="net48">
<dependency id="OpenCvSharp4" version="4.3.0.20190901" />
</group>
<group targetFramework="netcoreapp3.1">
<dependency id="OpenCvSharp4" version="4.3.0.20190901" />
</group>
</dependencies>
<frameworkAssemblies>
<frameworkAssembly assemblyName="System.Drawing" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="PresentationCore" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="PresentationFramework" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Core" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="WindowsBase" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Xaml" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Drawing" targetFramework="net48" />
<frameworkAssembly assemblyName="PresentationCore" targetFramework="net48" />
<frameworkAssembly assemblyName="PresentationFramework" targetFramework="net48" />
<frameworkAssembly assemblyName="System.Core" targetFramework="net48" />
<frameworkAssembly assemblyName="WindowsBase" targetFramework="net48" />
<frameworkAssembly assemblyName="System.Xaml" targetFramework="net48" />
</frameworkAssemblies>
</metadata>
<files>
<file src="..\src\OpenCvSharp.WpfExtensions\bin\Release\net461\OpenCvSharp.WpfExtensions.dll" target="lib\net461" />
<file src="..\src\OpenCvSharp.WpfExtensions\bin\Release\net461\OpenCvSharp.WpfExtensions.pdb" target="lib\net461" />
<file src="..\src\OpenCvSharp.WpfExtensions\bin\Release\net48\OpenCvSharp.WpfExtensions.dll" target="lib\net48" />
<file src="..\src\OpenCvSharp.WpfExtensions\bin\Release\net48\OpenCvSharp.WpfExtensions.pdb" target="lib\net48" />
<file src="..\src\OpenCvSharp.WpfExtensions\OpenCvSharp.WpfExtensions.xml" target="lib\net461" />

<file src="..\src\OpenCvSharp.WpfExtensions\bin\Release\netcoreapp3.1\OpenCvSharp.WpfExtensions.dll" target="lib\netcoreapp3.1" />
Expand Down
14 changes: 7 additions & 7 deletions nuget/OpenCvSharp4.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<tags>Image Processing OpenCV Wrapper FFI opencvsharp</tags>
<repository type="git" url="https://github.com/shimat/opencvsharp.git" />
<dependencies>
<group targetFramework="net461">
<group targetFramework="net48">
<dependency id="System.Runtime.CompilerServices.Unsafe" version="6.0.0" />
<dependency id="System.Memory" version="4.5.4" />
<dependency id="System.ValueTuple" version="4.5.0" />
Expand All @@ -39,15 +39,15 @@
</group>
</dependencies>
<frameworkAssemblies>
<frameworkAssembly assemblyName="System.Security" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Web" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Core" targetFramework="net48, net461" />
<frameworkAssembly assemblyName="System.Security" targetFramework="net48" />
<frameworkAssembly assemblyName="System.Web" targetFramework="net48" />
<frameworkAssembly assemblyName="System.Core" targetFramework="net48" />
</frameworkAssemblies>
</metadata>
<files>
<file src="..\src\OpenCvSharp\bin\Release\net461\OpenCvSharp.dll" target="lib\net461" />
<file src="..\src\OpenCvSharp\bin\Release\net461\OpenCvSharp.xml" target="lib\net461" />
<file src="..\src\OpenCvSharp\bin\Release\net461\OpenCvSharp.pdb" target="lib\net461" />
<file src="..\src\OpenCvSharp\bin\Release\net48\OpenCvSharp.dll" target="lib\net48" />
<file src="..\src\OpenCvSharp\bin\Release\net48\OpenCvSharp.xml" target="lib\net48" />
<file src="..\src\OpenCvSharp\bin\Release\net48\OpenCvSharp.pdb" target="lib\net48" />

<file src="..\src\OpenCvSharp\bin\Release\netstandard2.0\OpenCvSharp.dll" target="lib\netstandard2.0" />
<file src="..\src\OpenCvSharp\bin\Release\netstandard2.0\OpenCvSharp.pdb" target="lib\netstandard2.0" />
Expand Down
12 changes: 6 additions & 6 deletions nuget/OpenCvSharp4.runtime.uwp.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,11 @@
<file src="..\src\Release\uwpOpenCvSharpExtern\x64\OpenCvSharpExtern.dll" target="runtimes\win-x64\native" />
<file src="..\src\Release\uwpOpenCvSharpExtern\Win32\OpenCvSharpExtern.dll" target="runtimes\win-x86\native" />
<file src="..\src\Release\uwpOpenCvSharpExtern\ARM\OpenCvSharpExtern.dll" target="runtimes\win-arm\native" />
<file src="..\opencv_files\opencv453_uwp_x64\x64\vc16\bin\opencv_world453.dll" target="runtimes\win-x64\native" />
<file src="..\opencv_files\opencv453_uwp_x86\x86\vc16\bin\opencv_world453.dll" target="runtimes\win-x86\native" />
<file src="..\opencv_files\opencv453_uwp_arm\x86\vc16\bin\opencv_world453.dll" target="runtimes\win-arm\native" />
<file src="..\opencv_files\opencv453_uwp_x64\x64\vc16\bin\opencv_img_hash453.dll" target="runtimes\win-x64\native" />
<file src="..\opencv_files\opencv453_uwp_x86\x86\vc16\bin\opencv_img_hash453.dll" target="runtimes\win-x86\native" />
<file src="..\opencv_files\opencv453_uwp_arm\x86\vc16\bin\opencv_img_hash453.dll" target="runtimes\win-arm\native" />
<file src="..\opencv_files\opencv455_uwp_x64\x64\vc17\bin\opencv_world455.dll" target="runtimes\win-x64\native" />
<file src="..\opencv_files\opencv455_uwp_x86\x86\vc17\bin\opencv_world455.dll" target="runtimes\win-x86\native" />
<file src="..\opencv_files\opencv455_uwp_arm\x86\vc17\bin\opencv_world455.dll" target="runtimes\win-arm\native" />
<file src="..\opencv_files\opencv455_uwp_x64\x64\vc17\bin\opencv_img_hash455.dll" target="runtimes\win-x64\native" />
<file src="..\opencv_files\opencv455_uwp_x86\x86\vc17\bin\opencv_img_hash455.dll" target="runtimes\win-x86\native" />
<file src="..\opencv_files\opencv455_uwp_arm\x86\vc17\bin\opencv_img_hash455.dll" target="runtimes\win-arm\native" />
</files>
</package>
8 changes: 4 additions & 4 deletions nuget/OpenCvSharp4.runtime.win.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
<tags>Image Processing OpenCV Wrapper FFI opencvsharp</tags>
<repository type="git" url="https://github.com/shimat/opencvsharp.git" />
<dependencies>
<group targetFramework="net461"></group>
<group targetFramework="net48"></group>
<group targetFramework="netstandard2.1"></group>
<group targetFramework="netcoreapp3.1"></group>
<group targetFramework="net5.0"></group>
Expand All @@ -27,9 +27,9 @@
<files>
<file src="..\src\Release\x64\OpenCvSharpExtern.dll" target="runtimes\win-x64\native" />
<file src="..\src\Release\Win32\OpenCvSharpExtern.dll" target="runtimes\win-x86\native" />
<file src="..\opencv_files\opencv453_win_x64\x64\vc16\bin\opencv_videoio_ffmpeg453_64.dll" target="runtimes\win-x64\native" />
<file src="..\opencv_files\opencv453_win_x86\x86\vc16\bin\opencv_videoio_ffmpeg453.dll" target="runtimes\win-x86\native" />
<file src="OpenCvSharp4.runtime.win.props" target="build\net461\OpenCvSharp4.runtime.win.props" />
<file src="..\opencv_files\opencv455_win_x64\x64\vc17\bin\opencv_videoio_ffmpeg455_64.dll" target="runtimes\win-x64\native" />
<file src="..\opencv_files\opencv455_win_x86\x86\vc17\bin\opencv_videoio_ffmpeg455.dll" target="runtimes\win-x86\native" />
<file src="OpenCvSharp4.runtime.win.props" target="build\net48\OpenCvSharp4.runtime.win.props" />
<file src="OpenCvSharp4.runtime.win.props" target="build\netstandard\OpenCvSharp4.runtime.win.props" />
<file src="OpenCvSharp4.runtime.win.props" target="build\netcoreapp\OpenCvSharp4.runtime.win.props" />
<file src="OpenCvSharp4.runtime.win.props" target="build\net5.0\OpenCvSharp4.runtime.win.props" />
Expand Down