obserable array and utility function