How to write generic Metalcore