added nil case