abstract creation