Code for basic non generic implementation. No plugin yet