smart data structure