implemented zero-argument call operator