workaround: always return 0