last version there is a bug: inf loop for field selector. add a field smashing and also use the type smashing for fields