Base implementation

invokable? Or planning to extend it?