some selection stuff, trying out directives next