compile thing