add whole parse function