Fix AbstractMethodError + improvements