special struct replacement works on a basic level