another stab at compile