implement ABC metadata