diff --git a/Cargo.lock b/Cargo.lock
index fb8d159e..fc84a9cb 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -72,7 +72,7 @@ checksum = "366ffbaa4442f4684d91e2cd7c5ea7c4ed8add41959a31447066e279e432b618"
[[package]]
name = "acadrust"
version = "0.4.1"
-source = "git+https://github.com/HakanSeven12/cadcodec.git?rev=db73dab#db73dab540dbfb690c93f4416014262e6cf7bf42"
+source = "git+https://git@github.com/HakanSeven12/cadcodec.git?rev=788eea0161ba9f3eb7ee6569fd8bb52a8207a2ed#788eea0161ba9f3eb7ee6569fd8bb52a8207a2ed"
dependencies = [
"ahash 0.8.12",
"anyhow",
@@ -878,7 +878,7 @@ checksum = "fc652a48c352aef3ea3aed32080501cf3ef6ed5da78602a020c991775b0aff04"
[[package]]
name = "cadkernel"
version = "0.1.0"
-source = "git+https://github.com/HakanSeven12/cadkernel.git?rev=895f8b7#895f8b7b4d53845608689ead46c1a122e352b79b"
+source = "git+https://github.com/HakanSeven12/cadkernel.git?rev=b2b1d4b#b2b1d4b0cd7def2d26a0d519991fc89a89f916d3"
dependencies = [
"acadrust",
"cavalier_contours",
diff --git a/Cargo.toml b/Cargo.toml
index 763b322b..267e1e81 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -27,8 +27,8 @@ glam = { version = "0.33", features = ["bytemuck"] }
rfd = "0.17"
clap = { version = "4", features = ["derive"] }
env_logger = "0.11"
-acadrust = { git = "https://github.com/HakanSeven12/cadcodec.git", rev = "db73dab", features = ["serde"] }
-cadkernel = { git = "https://github.com/HakanSeven12/cadkernel.git", rev = "895f8b7", features = ["acis", "offset"] }
+acadrust = { git = "https://github.com/HakanSeven12/cadcodec.git", rev = "788eea0161ba9f3eb7ee6569fd8bb52a8207a2ed", features = ["serde"] }
+cadkernel = { git = "https://github.com/HakanSeven12/cadkernel.git", rev = "b2b1d4b", features = ["acis", "offset"] }
dwg-thumbnailer = { path = "crates/dwg-thumbnailer" }
flate2 = "1"
image = { version = "0.25", default-features = false, features = ["png", "jpeg", "bmp", "tiff"] }
@@ -60,6 +60,9 @@ ashpd = { version = "0.13.13", default-features = false, features = ["async-io",
iced_core = { git = "https://github.com/iced-rs/iced.git", rev = "23604ff22ab0aad9e00b9327cb7b8546ed84db39" }
iced_widget = { git = "https://github.com/iced-rs/iced.git", rev = "23604ff22ab0aad9e00b9327cb7b8546ed84db39" }
+[patch."https://github.com/HakanSeven12/cadcodec.git"]
+acadrust = { git = "https://git@github.com/HakanSeven12/cadcodec.git", rev = "788eea0161ba9f3eb7ee6569fd8bb52a8207a2ed" }
+
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
ocs_plugin_api = { path = "crates/ocs_plugin_api", features = ["host"] }
meshopt = "0.6.2"
diff --git a/assets/icons/extrude.svg b/assets/icons/extrude.svg
new file mode 100644
index 00000000..d864bce3
--- /dev/null
+++ b/assets/icons/extrude.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/icons/loft.svg b/assets/icons/loft.svg
new file mode 100644
index 00000000..99e9cf62
--- /dev/null
+++ b/assets/icons/loft.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/icons/polysolid.svg b/assets/icons/polysolid.svg
new file mode 100644
index 00000000..8532c376
--- /dev/null
+++ b/assets/icons/polysolid.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/icons/presspull.svg b/assets/icons/presspull.svg
new file mode 100644
index 00000000..189e6909
--- /dev/null
+++ b/assets/icons/presspull.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/icons/pyramid3d.svg b/assets/icons/pyramid3d.svg
new file mode 100644
index 00000000..a7d26f91
--- /dev/null
+++ b/assets/icons/pyramid3d.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/icons/revolve.svg b/assets/icons/revolve.svg
new file mode 100644
index 00000000..48073ba9
--- /dev/null
+++ b/assets/icons/revolve.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/icons/sweep.svg b/assets/icons/sweep.svg
new file mode 100644
index 00000000..4db7d373
--- /dev/null
+++ b/assets/icons/sweep.svg
@@ -0,0 +1,4 @@
+
diff --git a/assets/logo.svg b/assets/logo.svg
index e6bdb30b..7b4fdc6b 100644
--- a/assets/logo.svg
+++ b/assets/logo.svg
@@ -1,150 +1,21 @@
-
-