avoid vendor lock-in