abstractrender