fix compile error: use unboxed return type