Currently I am trying to implement this as much as possible in templates