adapted for markyy