adding updated public sematics